【发布时间】:2020-12-31 11:54:57
【问题描述】:
我有一个带有节点的应用程序,并且我的应用程序在 API 上使用 JWT 进行了身份验证(作为客户端)。
出现 401 错误时如何刷新我的令牌?
我的项目不使用 Express
我的服务:
const request = require('request');
let config = require('../../configuration');
module.exports = {
get_movies: function () {
return new Promise((resolve, reject) => {
request({
method: 'GET',
uri : 'http://myapi/v1/movies',
auth : {
'bearer': config.token
},
json : true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
resolve(body);
} else {
reject(response);
}
})
});
},
...
refreshToken: function () {
return new Promise((resolve, reject) => {
request({
method: 'GET',
uri : 'http://myapi/v1/token-refresh',
auth : {
'bearer': config.token
},
json : true
}, function (error, response, body) {
if (!error && response.statusCode === 200) {
resolve(body);
} else {
reject(response);
}
})
});
};
我想知道是否可以在我的 get_movies 函数上拦截我的(错误 401)请求,例如,调用我的刷新令牌函数并在重试我之前的函数 (get_movies) 之后?
【问题讨论】:
标签: javascript node.js interceptor