任何人都可以告诉我如何以编程方式访问我的QuickBooks Online帐户,特别是使用QBO Java库从Java应用程序访问。
例如:
OAuthAuthorizer oauth = new OAuthAuthorizer(
consumerKey, consumerSecret,
accessToken, accessTokenSecret);
Context context = new Context(
oauth, appToken, ServiceType.QBO, realmID);
DataService qbService = new DataService(context);
我不是要创建一个其他人可以用来登录他们的QB帐户的应用程序。我只想以编程方式访问自己的帐户。我是否真的必须为此创建oAuth令牌和秘密(并不断更新令牌)?如果是这样,我该怎么做?
当我尝试将oAuth游乐场用于我的帐户(生成oAuth令牌)时,出现的弹出对话框会询问“您要连接哪家公司?”但唯一的选择是沙盒(虚拟)公司帐户,而不是我的真实帐户。
几年前我就能做到这一点(因为游乐场会列出要连接的正确帐户),但现在我不知道如何让它正常工作。
答案 0 :(得分:1)
如果您不编写代码来执行Oauth握手,您仍然可以使用playground来生成Oauth访问令牌。令牌仅在需要刷新之前有效期最长为6个月。
https://appcenter.intuit.com/Playground/OAuth/IA/
其次,您的开发消费者密钥和秘密允许您访问免费的QuickBooks在线沙盒,而您的生产消费者密钥和秘密允许您访问生产QuickBooks在线帐户。
随意使用游乐场生成访问令牌,但您必须每6个月执行一次。更简单的方法是在代码中实现Oauth登录和握手,并根据需要重新登录或调用刷新。
-Jarred
答案 1 :(得分:0)
自从我上次使用API以来,Intuit已经改变了一些东西。最后一次,我使用我的应用程序开发键和oAuth进程将使生产QuickBooks帐户可用于连接。显然,现在开发密钥只会显示您已设置的沙箱帐户(或者在我的情况下自动为您设置的沙箱帐户)。
因此,您必须确保在oAuth流程中使用生产密钥才能查看生产帐户。
至于简单地获取程序访问我的帐户而不必跳过oAuth程序,据我所知,答案是你必须这样做,包括你在任何时期之后更新密钥选择的。