gpt4 book ai didi

meteor - 我应该如何存储来自第三部分 api 的访问 token

转载 作者:行者123 更新时间:2023-12-02 07:21:19 27 4
gpt4 key购买 nike

您好,我正在使用meteorjs 和第3 方API 在第3 方数据库上创建用户。

我正在使用 oauth2 获取访问 token ,并且 token 有 2 小时有效期。使用异步函数获取访问 token 后,我将其与几种不同的方法一起使用。

但是,我不想每次需要访问 token 时都调用异步函数,而是希望将其存储在服务器上直到它过期。

安全存储它们并在服务器上全局使用它们的最佳实践是什么?

提前非常感谢

最佳答案

我最终使用全局变量将 token 存储在服务器上;

token = '';

Meteor.methods({
refreshToken: function () {
token = getToken();
...
});

现在

token

适用于所有方法。我还检查 token 是否仍然有效,如果在 300 秒内到期,则刷新 token 。该部分的代码如下:

    const EXPIRATION_WINDOW_IN_SECONDS = 300;
const expirationTimeInSeconds = token.expires_at.getTime() / 1000;
const expirationWindowStart = expirationTimeInSeconds - EXPIRATION_WINDOW_IN_SECONDS;
const nowInSeconds = (new Date()).getTime() / 1000;
const shouldRefresh = nowInSeconds >= expirationWindowStart;
if (shouldRefresh) {
try {
//refresh the token
} catch (error) {
console.log('Error refreshing access token: ', error.message);
}
}

关于meteor - 我应该如何存储来自第三部分 api 的访问 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53732046/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com