fix: 请求过滤拦截处理

This commit is contained in:
TsMask
2023-09-05 17:09:01 +08:00
parent 8e72ad7f2f
commit c89ba642b5
2 changed files with 27 additions and 10 deletions

View File

@@ -1,11 +1,11 @@
/**令牌-数据响应字段 */
export const TOKEN_RESPONSE_FIELD = 'access_token';
export const TOKEN_RESPONSE_FIELD = 'accessToken';
/**令牌-请求头标识前缀 */
export const TOKEN_KEY_PREFIX = 'Bearer ';
export const TOKEN_KEY_PREFIX = '';
/**令牌-请求头标识 */
export const TOKEN_KEY = 'Authorization';
export const TOKEN_KEY = 'Accesstoken';
/**令牌-存放Cookie标识 */
export const TOKEN_COOKIE = 'AuthAntdv';
export const TOKEN_COOKIE = 'AuthOMC';

View File

@@ -165,12 +165,29 @@ function beforeRequest(options: OptionsType): OptionsType | Promise<any> {
/**请求后的拦截 */
function interceptorResponse(res: ResultType): ResultType | Promise<any> {
//console.log('请求后的拦截', res);
console.log('请求后的拦截', res);
// 登录失效时,移除授权令牌并重新刷新页面
if (res.code === 401) {
removeToken();
window.location.reload();
}
// 风格处理
if (!Reflect.has(res, 'code')) {
return Promise.resolve({
code: 1,
msg: 'success',
data: res,
});
}
if (Reflect.has(res, 'error')){
return Promise.resolve({
code: 0,
msg: 'error',
data: res.error,
});
}
return res;
}
@@ -210,7 +227,7 @@ export async function request(options: OptionsType): Promise<ResultType> {
// console.log('请求结果:', res);
if (res.status === 500) {
return {
code: 500,
code: 0,
msg: '服务器连接出错!',
};
}
@@ -220,7 +237,7 @@ export async function request(options: OptionsType): Promise<ResultType> {
case 'text': // 文本数据
const str = await res.text();
return {
code: 200,
code: 1,
msg: str,
};
case 'json': // json格式数据
@@ -243,7 +260,7 @@ export async function request(options: OptionsType): Promise<ResultType> {
? await res.blob()
: await res.arrayBuffer();
return {
code: 200,
code: 1,
msg: '成功',
data: data,
status: res.status,
@@ -251,7 +268,7 @@ export async function request(options: OptionsType): Promise<ResultType> {
};
default:
return {
code: 500,
code: 0,
msg: '未知响应数据类型',
};
}
@@ -259,7 +276,7 @@ export async function request(options: OptionsType): Promise<ResultType> {
// 请求被终止时
if (error.name === 'AbortError') {
return {
code: 500,
code: 0,
msg: '网络连接超时!',
};
}