DocuSignAPI REST - 为什么我的OAuth请求不会通过?

And*_*rew 2 docusignapi

我正在尝试使用DocuSign REST API并创建OAuth请求以执行代理发送(SOBO).虽然我无法完成第一项任务,但它给了我一个错误的请求.我究竟做错了什么?

请求标题:

POST https://demo.docusign.net/restapi/v2/oauth2/token

Accept: application/xml
Content-Type: application/xml
Content-Length: {length of body}
Run Code Online (Sandbox Code Playgroud)

请求机构

<OAuthTokenRequest>
  <grant_type>password</grant_type>
  <client_id>{IntegratorKey}</client_id>
  <username>test@email.com</username>
  <password>{Password}</password>
  <scope>api</scope>
</OAuthTokenRequest>
Run Code Online (Sandbox Code Playgroud)

响应错误:

400 Bad Request 

<oauthErr xmlns="http://www.docusign.com/restapi" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
  <error>invalid_request</error>
  <error_description>An OAuth2 error occurred:</error_description>
</oauthErr>
Run Code Online (Sandbox Code Playgroud)

And*_*rew 5

虽然大多数DocuSign REST API都接受XML格式,但OAuth请求必须以x-www-form-urlencoded形式进行.

将您的请求更改为以下内容:

请求标题:

POST https://demo.docusign.net/restapi/v2/oauth2/token

Accept: application/xml
Content-Type: application/x-www-form-urlencoded
Content-Length: {length of body}
Run Code Online (Sandbox Code Playgroud)

请求机构:

grant_type=password&client_id={IntegratorKey}&username=test@email.com&password={Password}&scope=api
Run Code Online (Sandbox Code Playgroud)

样品响应:

200 OK

<oauthAccess xmlns="http://www.docusign.com/restapi" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
  <access_token>{Access Token}</access_token>
  <scope>api</scope>
  <token_type>bearer</token_type>
</oauthAccess>
Run Code Online (Sandbox Code Playgroud)

可以在本文档中获取更多信息.