【问题标题】:Correct URL for OAuth 2 at Quickbooks Online API?Quickbooks Online API 上 OAuth 2 的正确 URL?
【发布时间】:2017-08-07 14:52:07
【问题描述】:

我需要一些帮助来确认要使用的 URL。 Quickbooks Online 不再支持新帐户的 OAuth 1 并且 OAuth 2 文档似乎有点杂乱无章和令人困惑。最重要的是,在过去的几天里,我从 API 中看到了很多模糊的错误,并且似乎有一些计划的维护,但即使所有系统都可以运行,我仍然看到一条消息说“我们正在由于定期维护,暂时无法使用。”

我一直在尝试通过将 URL 粘贴到浏览器中以获取授权代码来测试初始步骤。这是我的 URL 逐字逐句,除了一个假的 client_id 和一个假的 ngrok 子域:

https://sandbox-quickbooks.api.intuit.com/connect/oauth2?client_id=aaaaaaaaa9999999&response_type=code&scope=com.intuit.quickbooks.accounting&redirect_uri=https://8888888888bbbbbbbb.ngrok.io/quickbooks/start&state=ABC123987XYZab983111

目前的回复给了我一个漂亮的黄色便利贴,上面写着“我们很快就会回来”。我知道这看起来很明显,但 Intuit 状态页面的所有内容都显示为绿色。如果它真的出现故障,如果有人可以确认这是要使用的正确 URL,它仍然会有所帮助,因为我注意到两个“发现”文档都没有这个 URL,但是在我的头撞到墙上之后几天前,我意识到发现文档可能不正确,因此我转而尝试使用沙盒 URL。

这是正确的还是基本 URL 应该是其他东西,例如

https://appcenter.intuit.com/connect/oauth2

https://oauth.intuit.com/oauth/v1/get_request_token

即使在开发模式下?

我很惊讶没有详细的与语言无关的 REST 客户端分步示例,用于使用 Quickbooks Online API 的 OAuth2。有人评论说 Intuit 一定觉得展示如何生成签名太复杂了,每个人都应该只使用一个 SDK,但没有一个 SDK 对我来说是一个选项。

感谢您的帮助!

【问题讨论】:

    标签: intuit-partner-platform


    【解决方案1】:

    正确的基数是https://appcenter.intuit.com/connect/oauth2。您的所有参数看起来也正确,但是如果您尝试像这样在 url 中提供这些参数,您可能会遇到加密问题。从这里的文档:https://developer.intuit.com/docs/0100_quickbooks_online/0100_essentials/000500_authentication_and_authorization/connect_from_within_your_app,它说您需要对这些参数进行 url 编码。

    不确定您使用的是什么语言/环境,但在 RoR 中,只需将参数放在哈希中,如下所示:

    params = {
       client_id: 'aaaaaaaaa9999999',
       key: 'value',
       key: 'value'
    }
    

    然后url编码如下:

    query = URI.encode_www_form(params)
    

    最后,在发送之前将其放入请求的正文中。发送后,期望在响应中收到一个授权码作为查询参数的一部分,您将使用它再次发回以接收您的令牌和刷新令牌。希望这会有所帮助!

    【讨论】:

    • 谢谢!很好的答案!在您发布之前,我偶然发现了正确的答案,但我把头撞到墙上的主要原因是,当 Intuit 遇到停机时间并且他们的错误消息不清楚发生了什么时,我开始尝试使用 API .啊!通过将授权请求 URL 粘贴到 Web 浏览器中,我能够收到正确的响应,因此该部分无需 URL 编码即可工作,如果后续步骤需要它,它可能会从我这里抽象出来,因为 oauth2 gem 正在使用 Faraday gem(这个代码在 Ruby on Rails 中运行)。
    猜你喜欢
    • 1970-01-01
    • 2016-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多