繁体   English   中英

Zoho OAuth 2.0 多次刷新令牌

[英]Zoho OAuth 2.0 Refresh token multiple times

我正在使用 Zoho OAuth 2.0,并且我已按照https://www.zoho.com/crm/help/api/v2/#oauth-request 中的步骤获取访问令牌和刷新令牌。 但是我有一些问题。

这是一个场景:

1. Get authorization token
2. From authorization token, get  access token and refresh token.
3. After one hour, I use the refresh token. (then I receive a new access token) - As stated here https://www.zoho.com/crm/help/api/v2/#refreshing-tokens
4. After that, another hour, how is it possible for me to get another access token? As refresh token expires in an hour (similar to access token I assume).
5. When I refresh token, only a new access token is given but not a new refresh token. So after one hour I cannot do another refresh again.

任何人都知道如何做到这一点?

我自己有一个类似的用例,我必须说它的文档很差。 您的应用程序应该有一个“静态”刷新令牌,并使用它每小时生成一个新的访问令牌。

验证---->刷新--(每小时)-->访问

因此,对于我的后端,我使用预先生成的刷新令牌并在该小时的时间到时生成访问令牌。 使用此访问令牌与 API 进行正常交互。

我建议您阅读多个 Zoho 模块的文档,因为它们很差,即使您只使用一个模块,您可能需要多个示例才能真正理解它(大多数情况下,身份验证部分实际上是相同的)。 你可以从这里这里开始。

Zoho 一个账户只提供一次刷新令牌。 所以我们必须保存刷新令牌以获取新的访问令牌。

使用此函数创建新的访问令牌。 您必须在访问令牌过期之前每小时调用一次此方法。 它会为您生成一个新的访问令牌

function generateAuthTokenfromRefreshToken(test){    ZCRMRestClient.generateAuthTokenfromRefreshToken(process.env.ADMIN_EMAIL_ADDRESS,process.env.REFRESH_TOKEN).then(function(auth_response){
         process.env.OAUTH_TOKEN=auth_response.access_token;         
         logger.log('info', ` new_outh_token :${auth_response.access_token}`);                 
 })

暂无
暂无

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

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