请求头的携带,有疑惑
来源:11-6 请求头发送token和获取用户信息

小雨点3545254
2023-11-16
// 添加请求拦截器
instance.interceptors.request.use(function (config) {
if (config.headers) {
config.headers.authorization = (store.state as StateAll).users.token;
}
return config;
}, function (error) {
return Promise.reject(error);
});
老师,如果这样设置携带请求头设置的话,每次发送请求,不管什么请求都会携带token。发送登录请求也会携带token,登录请求的话,不需要携带token,还有,不一定所有请求都需要携带token,这样设置,是不是有点不合理??
老师有没有什么优化的办法,因为实际开发中,发送有的请求不需要携带token,不光是用户登录,还有其他的请求也不需要携带token,希望老师能详细的讲解一下?
写回答
1回答
-
西门老舅
2023-11-16
这种情况下,可以在发起请求的时候,携带一个请求参数来判定是否需要携带token,举例如下:
instance.interceptors.request.use(function (config) {
if (config.headers && shouldIncludeToken(config)) {
config.headers.authorization = (store.state as StateAll).users.token;
}
return config;
}, function (error) {
return Promise.reject(error);
});
function shouldIncludeToken(config) {
return !config.url.includes('/exclude-token-path');
}
022023-11-17
相似问题