我正在使用Swagger创建一个文档页面,我想自动添加从正确的/login
调用中收到的访问令牌。我尝试使用
responseInterceptor: (responseObj) => {
if(responseObj.obj.access_token !== 'undefined'){
token = responseObj.obj.access_token;
}
return responseObj
}
接收和存储令牌,
requestInterceptor: (requestObj) => {
if(token !== 'undefined') {
requestObj.headers.Authorization = `Bearer ${token}`;
}
return requestObj
}
通过标头将其传递给后续请求,但这仅适用于一次调用,之后令牌将恢复为null
。
如何保持token
值不被还原?
答案 0 :(得分:0)
通过将令牌声明为全局变量找到解决方案。
//Checks any reponse obtained for an access token
responseInterceptor: (responseObj) => {
if("access_token" in responseObj.obj){
window.token = responseObj.obj.access_token;
}
return responseObj
},
//Adds the authorization to the request header if token has been set
requestInterceptor: (requestObj) => {
if(window.token) {
requestObj.headers.Authorization = `Bearer ${window.token}`;
}
return requestObj
}
我是JS和Swagger的新手,所以答案并不明显。我希望这最终有助于某人。