JWT过期了fetch javascript

问题描述 投票:0回答:2

在发出获取数据请求之前,使用纯javascript获取函数检查JWT是否已过期且在授权标头中传递的最佳方法是什么?

const headers = new Headers({
    'Content-Type': 'application/json',
    Authorization: 'Bearer GrabbedFromParamQueryString'
});

const settings = {
    method: 'GET',
    headers: headers
};

fetch('/info/user, settings).then(response => {
    console.log(response.json());
});

我知道在jQuery中你可以预先检查它是否已经过期然后生成一个新令牌然后继续原始请求。有这样的东西与Javascript fetch如果是这样如何?

任何帮助,将不胜感激。

javascript ajax fetch-api
2个回答
0
投票

我能够通过检查响应的状态来实现这一点,如果响应已过期,则会给出答案。一旦我获得了该信息,就创建了一个处理错误函数,并执行下一组操作以获取新的刷新和令牌ID。


0
投票

尝试

       console.log(response.json());
       if(response.msg=== "Token is expired"){
           alert('token is already expired, login again')
          }
});

至少这就是我为jwt做的事扩展了令牌,因为它们产生了这样的反应。所以在你的情况下,如果你使用了其他一些命名类型,如“消息”,请继续使用它来循环你的响应。我希望它有所帮助。

© www.soinside.com 2019 - 2024. All rights reserved.