繁体   English   中英

是否可以设置QuickBooks Online访问令牌的到期时间或生存期

[英]Is it possible to set QuickBooks Online access token expiration or lifetime

我不确定这是否可能,但是位于以下位置的oAuth游乐场:

https://appcenter.intuit.com/Playground/OAuth/IA/?ck=consumer_key&cs=consumer_secret

似乎暗示它是。 除使用者密钥/秘密字段外,还有一个访问令牌到期字段。 后续使用的URL是:

https://appcenter.intuit.com/Connect/SessionStart?grantUrl=https%3A%2F%2Fappcenter.intuit.com%2FPlayground%2FOAuth%2FBeginIAFlow%3Fconsumer_key%3D[my_consumer_key]%26consumer_secret%3D[my_consumer_secret]%26access_token_lifetime% 3D300

最后的access_token_lifetime参数指定了访问令牌的生存时间(以秒为单位),但是我尝试将此参数插入到同时发送给请求令牌API和访问令牌API的URL中(不能同时发送给一个或两个其他分别)。 例如,对于请求令牌API,我尝试过:

HttpParameters additionalParams = new HttpParameters();
additionalParams.put("oauth_callback", URLEncoder.encode(callback_url, "UTF-8"));
additionalParams.put("access_token_lifetime", "500");
ouathconsumer.setAdditionalParameters(additionalParams);

String signedRequestTokenUrl = ouathconsumer.sign(REQUEST_TOKEN_URL);
signedRequestTokenUrl += "&access_token_lifetime=500";

...以及访问令牌API:

HttpParameters additionalParams = new HttpParameters();
additionalParams.put("oauth_callback", "oob");
additionalParams.put("oauth_verifier", verifierCode);
additionalParams.put("access_token_lifetime", "500");
consumer.setAdditionalParameters(additionalParams);

String signedURL = consumer.sign(ACCESS_TOKEN_URL);
signedURL += "&access_token_lifetime=500";

两者都没有起作用。 在两种情况下,oAuth过程均成功,并且我的开发人员帐户显示已建立新连接。 但是即使在500秒后,该连接仍然有效。

但是,没有提到在Intuit文档中为标准oAuth令牌到期(180天)设置访问令牌到期时间,因此,我希望这并不意味着不可能:

https://developer.intuit.com/docs/0025_quickbooksapi/0010_getting_started/0020_connect/0010_from_within_your_app/implement_oauth_in_your_app/token_renewal_and_expiration

您无法设置自己的令牌生存期。

为什么有人甚至需要这个?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM