我不确定这是否可能,但 oAuth Playground 位于:
https://appcenter.intuit.com/Playground/OAuth/IA/?ck=consumer_key&cs=consumer_secret
似乎表明确实如此。除了消费者 key / secret 字段之外,还有一个访问 token 到期字段。接下来使用的 URL 是:
最后的 access_token_lifetime
参数指定访问 token 生命周期(以秒为单位),但我尝试将此参数插入到发送到请求 token API 和访问 token API 的 URL 中(不是同时进行,而是单独进行其中之一)。例如,对于请求 token 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";
...以及访问 token 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 token 过期(180 天)设置访问 token 过期时间,因此我希望这并不意味着这是不可能的:
最佳答案
无法设置您自己的 token 生命周期。
为什么有人需要这个?
关于java - 是否可以设置 QuickBooks Online 访问 token 过期或生命周期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23426523/