gpt4 book ai didi

docusignapi - 401 开发者沙箱中对 access_token 的未授权响应

转载 作者:行者123 更新时间:2023-12-01 16:04:45 25 4
gpt4 key购买 nike

我正在使用开发人员沙箱进行所有 api 调用。
这是使用 Laravel 5.2 构建的网站
所有 api 调用均使用 guzzle/guzzle 进行.

我正在尝试使用 docusign api 自动发送 pdf 契约(Contract)(创建信封)。

我遵循了 Using the Authorization Code Grant 中的步骤

我没有问题:

  • Starting the Authentication Code Grant
  • Handling the Response
  • Exchanging the Code for a Token
  • Getting the User’s Account and Base URI Information

  • 我得到后 userinfo ,只有一个账号,所以我用了那个账号 base_uri 对于所有后续的 api 调用 {base_uri} + "/restapi/v2/accounts/" + {account_id}
    在我随后的所有 api 调用中,我还添加了 header
    Authorization: Bearer eyJ0eX...MrhIddzBAQ
    我在哪里使用 access_token 我在步骤中得到的 代币兑换码

    当做 create envelope api call ,或任何其他 api 调用,使用 access_token , base_uri account_id 我得到 POST https://demo.docusign.net/restapi/v2/accounts/<account_id>/envelopes导致 401 Unauthorized回复

    我试过的

    使用 进行测试access_token 在 docusign API 资源管理器中:
    我去了 API EXPLORER - create envelope
    我用过 使用沙盒帐户进行身份验证 使用 进行身份验证access_token 我在之前对 docusign 的调用中得到了这些。与 相同account_id .

    当我点击 发送请求 , 我得到 401 未经授权 再次回应。

    当我使用 使用沙盒帐户进行身份验证 ,但这次我点击 获取 OAuth2 token (生成新 token ),然后单击 发送请求 ,我收到成功消息。

    然后我复制了这个 access_token (来自 请求 )进入我的网站以测试 api 调用,这次它起作用了。它也适用于我对 docusign 进行的所有其他 api 调用。
  • 因此,使用 access_token 我得到的 代币兑换码 , 我得到 401 未经授权 用于 API 调用
  • 当我使用 access_token 我在 中生成的API 浏览器 ,所有对 docusign 的 api 调用都在我的网站上工作。

  • 我也试过
  • 使用 refresh_token 换新 access_token .尚 401
  • Xdebug,逐步确保所有参数/ header 都在 api 调用之前设置。它们是,它们与 api explorer 相同。
  • Guzzle 选项 debug => true获取有关请求的更多信息,并与 中发送的内容进行比较API 浏览器 ,除了 token 之外,它们基本相同。
  • postman 向 api 发出请求,(只是为了消除我的代码中出现错误的任何机会),具有相同的行为:
  • 401 带有我从 docusign 获得的 token
  • 使用成功 API 浏览器 生成的 token

  • 我有点不知道下一步该做什么以及如何解决这个问题,我确定这很简单,但我似乎无法找到问题所在。

    更新

    我使用了 Larry K 的回答,发现我的问题出在/oauth/auth 调用中的范围值上。我把它改成了 scope=signature%20extended ,一切正常!

    最佳答案

    当您单击 时获取 OAuth2 token 在 API 资源管理器中,您将完成完整的授权代码授予流程,包括新 token 。

    由于这有效,但您的应用程序通过 OAuth 授权代码流程获得的 token 不起作用,这告诉我您的应用程序有问题。

    查看:

  • 从 DocuSign 注销。从您的应用程序登录。您是否已转移到 DocuSign 以正确登录?然后重定向到您的应用程序?
  • 您是否在请求中请求“ 签名”范围?检查范围名称的拼写和大小写!
  • 当您重定向到您的应用程序时,您的应用程序会收到授权代码作为查询参数。你明白吗?
  • 当您将授权代码转换为不记名 token 时,您是否存储了完整的不记名 token ?它很长。
  • 当您发送 Envelopes::create 请求时,您是否在单词 Bearer 和 token 本身之间包含一个空格?
  • 您是否正在向 demo.docusign.net 发出 API 调用? (不是 .com)

  • 如果以上没有帮助,那么请使用您的请求的痕迹更新您的问题(您可以自行编辑您的问题)。

    关于docusignapi - 401 开发者沙箱中对 access_token 的未授权响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47166522/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com