嘗試示例項目:https://github.com/docusign/eg-01-java-jwt出現(xiàn)以下錯誤:Fetching an access token via JWT grant...Exception in thread "main" com.docusign.esign.client.ApiException: Error while requesting an access token: POST https://account-d.docusign.com/oauth/token returned a response status of 400 Bad Request at com.docusign.esign.client.ApiClient.requestJWTUserToken(ApiClient.java:740)我猜我在組裝 JWT 請求時錯過了一些東西: String privateKey = DSConfig.PRIVATE_KEY.replace("\\n", "\n"); byte[] privateKeyBytes = privateKey.getBytes(); apiClient.setOAuthBasePath(DSConfig.DS_AUTH_SERVER); OAuth.OAuthToken oAuthToken = apiClient.requestJWTUserToken( DSConfig.CLIENT_ID, DSConfig.IMPERSONATED_USER_GUID, scopes, privateKeyBytes, TOKEN_EXPIRATION_IN_SECONDS);配置屬性:# Integrator Key (client id) issDS_CLIENT_ID=4dcfdaa1-xxxx-xxxx-xxxx-110bf207310f# API username Guid subDS_IMPERSONATED_USER_GUID=5aff04e4-xxxx-xxxx-xxxx-7ac9eefdac1a# private key stringDS_PRIVATE_KEY=\n\-----BEGIN RSA PRIVATE KEY-----\n\MIIEowIBAAKCAQEAgb2XJwtQ3S8henWphAtUcAChdDl1yYzHllytR4DZMY5hqp6E\n\8A2kxblecKHSa4OMn5fP2liyWOCNNA7Vactj0/zI60yUdeOtRg4GyjjG/ShPc80F\n\...sJn5DNlHlwpQjsxyVpxrkGNIRzhTUxdBGZ4VZrh5QM77z9kSX9uKkZ7oZQWv7IcJ\n\hO80HJ6v12HvTqypoqqOvVPKC1SK61cwdWdKi1GExcPqbrFoAJkB\n\-----END RSA PRIVATE KEY-----我得到的唯一錯誤是:Exception in thread "main" com.docusign.esign.client.ApiException: Error while requesting an access token: POST https://account-d.docusign.com/oauth/token returned a response status of 400 Bad Request想知道為什么它在 400 時失敗,并且沒有其他信息可以用來弄清楚為什么我得到 400。我打賭你們可能知道為什么會發(fā)生這種情況。提前致謝。
3 回答

倚天杖
TA貢獻1828條經(jīng)驗 獲得超3個贊
當(dāng)前版本的 DocuSign Java SDK 不會報告從 DocuSign 收到的錯誤原因。即將發(fā)布的 Java SDK(候選版本現(xiàn)已推出)修復(fù)了此問題。(但我認為該示例需要更新。)
我認為這就是您遇到的問題。正如德魯在他的回答中所說,潛在的錯誤可能是consent_required。

撒科打諢
TA貢獻1934條經(jīng)驗 獲得超2個贊
假設(shè)其他一切都正確,您是否已授予申請同意書?當(dāng)您使用 JWT Grant 工作流程時,您需要確認您已授予兩個范圍:signtaure impersonation
.?個人同意要求您導(dǎo)航到特定 URL、進行身份驗證并授予應(yīng)用程序以您身份行事的權(quán)限。
組織同意要求您擁有已聲明的域,并且僅適用于電子郵件地址位于該域下的用戶。
添加回答
舉報
0/150
提交
取消