【问题标题】:quickbooks apis without a browser没有浏览器的 quickbooks api
【发布时间】:2014-07-25 03:35:51
【问题描述】:
主要问题:
是否有任何(支持/非hacky)方法来使用 Quickbooks Online 和客户帐户数据 API,而不涉及浏览器,即从服务器发出 API 请求?
评论:
IPP 文档仅提及 saml 和 3-legged oauth,这似乎暗示任何身份验证和后续 api 调用都必须来自浏览器。
请注意,这不是满意的回答:
How can I use API to get quickbooks data without browser based OAUTH?
,作为那个答案:
- 不是由 Intuit 提供的,也不指向 Intuit 源
- 建议一个 hacky 解决方案:用户/浏览器进行身份验证,然后 oauth/etc.凭据被存储和重复使用。除非 Intuit 明确批准,否则长期使用这似乎是一个特别糟糕的主意,因为 api 可能(并且可能会)在某些时候使任何 oauth/saml 令牌过期。
【问题讨论】:
标签:
intuit-partner-platform
【解决方案1】:
不,要获取 accessToken 和 accessSecret,您需要使用浏览器。
正如您所提到的,您的第二个选项是实现这一目标的唯一方法。即重复使用存储的令牌。
PN - OAuth 令牌的有效期为 180 天。在token过期之前,您的应用可以通过调用Reconnect API获取一个新的token,提供不间断的服务。您可以通过编写一个小程序来自动化这部分,该程序将在令牌超过 150 天时调用 ReconnectAPI。
参考 - Manage OAuth Tokens
您可以从这里生成 OAuth 令牌(第一次) - IPP OAuth Playground
CAD
在这里,OAuth 令牌的有效期为 1 小时。一小时后,您的应用程序将不得不再次发出另一个 SAML 断言以请求使用新的 OAuth 令牌。令牌应仅在用户会话期间保留,然后销毁。
参考 - CAD SAML
谢谢