我需要使用Quickbooks在线API在我的系统和我们客户在quickbooks上的帐户之间同步数据。
我需要知道是否可以完成oauth2授权流程并在没有人工交互的情况下进行API调用(无需与Intuit的身份验证和授权窗口进行交互)?
上阅读了Intuit的文档第一步,我向GET请求:
https://appcenter.intuit.com/connect/oauth2?client_id=MY_ID&scope=com.intuit.quickbooks.accounting&redirect_uri=https%3A%2F%2FMY_NGROK_URL.ngrok.io%2FOAuth2PHPExample.php&response_type=code&state=RandomState#/Authorize/COMPANY_ID
然后,Intuit的身份验证和授权窗口打开,我需要输入我的用户名和密码,然后单击授权按钮以获取授权代码。
有没有办法获得授权代码而无需进行身份验证和授权?
我需要自动执行此任务,以便使用PHP在后端进行API调用。
谢谢, 马塞洛。
答案 0 :(得分:1)
有没有办法获得授权代码而无需进行身份验证和授权?
不......但请阅读以下内容。
我需要自动执行此任务,以便使用PHP在后端进行API调用。
您误解了OAuth(1或2)的工作原理。
首次连接时,系统将提示您验证/授权访问QuickBooks Online数据。
然后,您将获得刷新令牌(或访问令牌,具体取决于您是否使用OAuth2与OAuth1)。
然后存储该刷新令牌(或OAuth1的访问令牌),并且可以使用该令牌继续无人值守地发出请求,而无需用户参与。
关键外卖:您只需要用户参与您连接的第一时间,然后再也不需要。