2017-08-07 92 views
1

我想要一些帮助确认使用哪些URL。 Quickbooks Online不再支持新帐户的OAuth 1,而OAuth 2文档似乎有点混乱和混乱。最重要的是,在过去的几天里,我看到了API中的许多模糊错误,似乎有一些定期维护,但即使所有系统都在运行,我仍然看到一条消息:“我们是由于定期维护暂时不可用。“在Quickbooks Online API上更正OAuth 2的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应该是别的东西,即使在开发模式如

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

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

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

感谢您的帮助!

回答

3

正确的基数是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编码。

不知道用什么语言/环境中,您正在使用,但在回报率,只需将PARAMS在哈希像这样:

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

然后URL编码就像这样:

query = URI.encode_www_form(params) 

最后,然后将其发送到请求的正文中,然后发送。发送后,期望在响应中收到一个授权代码作为查询参数的一部分,您将使用该代码重新发回来接收令牌和刷新令牌。希望这可以帮助!

+0

谢谢!很好的答案!在发布之前,我偶然发现了正确的答案,但是我将头撞向墙壁的主要原因是因为我在Intuit遇到停机时开始尝试使用API​​,并且他们的错误消息不清楚发生了什么。啊!通过将授权请求URL粘贴到Web浏览器中,我能够接收到正确的响应,从而使部分工作不使用URL编码,如果需要后续步骤,可能会从我这里抽象出来,因为oauth2 gem正在使用Faraday gem(this代码在Ruby on Rails中运行)。 –

相关问题