在 Quickbooks Online API 上更正 URL 的 OAuth 2?
Correct URL for OAuth 2 at Quickbooks Online API?
我需要一些帮助来确认要使用哪些 URL。 Quickbooks Online 不再支持新帐户的 OAuth 1,OAuth 2 文档似乎有点混乱和混乱。最重要的是,在过去的几天里,我从 API 看到了很多模糊的错误,而且似乎有一些定期维护,但即使所有系统都在运行,我仍然看到一条消息说 "We are temporarily unavailable due to scheduled maintenance."
我一直在尝试通过将 URL 粘贴到浏览器中来获取授权代码来测试初始步骤。这是我的 URL 逐字记录,除了一个假的 client_id 和一个假的 ngrok 子域:
当前的回复给我一个漂亮的黄色 post-it 注释,上面有 "We'll be back soon"。我知道这似乎很明显,但 Intuit 状态页面在所有内容上都显示为绿色。如果它真的关闭了,如果有人可以确认这是正确的 URL 使用,它仍然会有所帮助,因为我注意到 "discovery" 文档中没有一个有这个 URL 但几天前我的头撞到墙上后,我意识到发现文档可能不正确,所以我转而尝试沙箱 URL。
这是正确的还是基础 URL 应该是其他东西,例如
https://appcenter.intuit.com/connect/oauth2
https://oauth.intuit.com/oauth/v1/get_request_token
即使在开发模式下?
令我感到非常惊讶的是,Quickbooks Online API 没有针对 OAuth2 的详细的与语言无关的 REST 客户端分步示例。有人评论说,Intuit 肯定觉得显示如何生成签名太复杂了,每个人都应该使用 SDK,但 none 个 SDK 对我来说是一个选项。
感谢您的帮助!
正确的基数是 https://appcenter.intuit.com/connect/oauth2. All your params look correct too, but you might be running into a encryption problem if you're trying to serve those params in the url like that. From the documentation here: 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)
最后,在发送之前将其放入您的请求正文中。发送后,预计会收到一个授权代码作为响应中查询参数的一部分,您将使用它 post 再次返回以接收您的令牌和刷新令牌。希望这对您有所帮助!
我需要一些帮助来确认要使用哪些 URL。 Quickbooks Online 不再支持新帐户的 OAuth 1,OAuth 2 文档似乎有点混乱和混乱。最重要的是,在过去的几天里,我从 API 看到了很多模糊的错误,而且似乎有一些定期维护,但即使所有系统都在运行,我仍然看到一条消息说 "We are temporarily unavailable due to scheduled maintenance."
我一直在尝试通过将 URL 粘贴到浏览器中来获取授权代码来测试初始步骤。这是我的 URL 逐字记录,除了一个假的 client_id 和一个假的 ngrok 子域:
当前的回复给我一个漂亮的黄色 post-it 注释,上面有 "We'll be back soon"。我知道这似乎很明显,但 Intuit 状态页面在所有内容上都显示为绿色。如果它真的关闭了,如果有人可以确认这是正确的 URL 使用,它仍然会有所帮助,因为我注意到 "discovery" 文档中没有一个有这个 URL 但几天前我的头撞到墙上后,我意识到发现文档可能不正确,所以我转而尝试沙箱 URL。
这是正确的还是基础 URL 应该是其他东西,例如
https://appcenter.intuit.com/connect/oauth2
https://oauth.intuit.com/oauth/v1/get_request_token
即使在开发模式下?
令我感到非常惊讶的是,Quickbooks Online API 没有针对 OAuth2 的详细的与语言无关的 REST 客户端分步示例。有人评论说,Intuit 肯定觉得显示如何生成签名太复杂了,每个人都应该使用 SDK,但 none 个 SDK 对我来说是一个选项。
感谢您的帮助!
正确的基数是 https://appcenter.intuit.com/connect/oauth2. All your params look correct too, but you might be running into a encryption problem if you're trying to serve those params in the url like that. From the documentation here: 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)
最后,在发送之前将其放入您的请求正文中。发送后,预计会收到一个授权代码作为响应中查询参数的一部分,您将使用它 post 再次返回以接收您的令牌和刷新令牌。希望这对您有所帮助!