|
|
import axios from 'axios';
|
|
|
// 创建axios实例
|
|
|
const service = axios.create({
|
|
|
baseURL: 'http://192.168.7.3:18080', // 设置基础URL
|
|
|
timeout: '60000' ,// 设置请求超时时间
|
|
|
// withCredentials: true,
|
|
|
});
|
|
|
// service.defaults.withCredentials = true;
|
|
|
// 请求拦截器
|
|
|
service.interceptors.request.use(
|
|
|
(config) => {
|
|
|
// 在发送请求之前做些什么,例如添加token到headers
|
|
|
// config.headers['cookie'] = 'authjs.csrf-token=024846fb3c7ff4d8baffaf9de069396e72ab6c439fb44ce126830edee05d2e88%7Ccc355f6cf425ed6dc60262ef653a29adb8c2a05aba34ddf4a2c1c4dfa59d5613; authjs.callback-url=http%3A%2F%2F192.168.15.199%3A3210%2Fchat%3Fsession%3Dinbox%26topic%3Dtpc_nBRvJCjmn1as; LOBE_LOCALE=zh-CN; LOBE_THEME_PRIMARY_COLOR=undefined; LOBE_THEME_NEUTRAL_COLOR=undefined; authjs.session-token=eyJhbGciOiJkaXIiLCJlbmMiOiJBMjU2Q0JDLUhTNTEyIiwia2lkIjoiY3FXQ2gyUDdpSVZEdkFQZEtHQU55d0JJdmFaMDhGVzJfV1pBelQxYjVoV0oyRjRubDF1LWFJdllYeHkxMW4zZU1kdjVrMlAxWFRwQWdfZl9SdDU2Q2cifQ..wduWoP240CT_p3rOpF3vWg.do7yfgOkk8YMgwApJ1C2-rkBVPh9x00dXBNe-SMhhTj5NH5EEfwEYQiqHb3ZJwnSdT_L6d_GnY42NvgS6E1yTmi54gCdxabms-Eemy75IB_UCDcQjak7e4hSRFdAbH8AjA0MeS6fpJcFJlkWwniZf9kWZsuvy-m702_4SsP8E9E5b_X-9EIX85cDhRFjUC6cNdpNcwY98CvlhI7X-PMh20unkhSRiKCLJOaEKIZeJg_REGezxGcz3NrIE30fI3KB0T5tHetKYO_6BYJ5KCWgiaKHebgxSA21KTXeggpv0Q-UBS5yOmys32Ra2NwFroyahJ9VC0Z3cQiZegb7GXIjkg.UfjoEB1hV-NjULY12ZqZp_hLeInM4LCUHhUNyeqygws';
|
|
|
config.headers['x-lobe-chat-auth'] = 'http_nosafe.eyJhY2Nlc3NDb2RlIjoiIiwidXNlcklkIjoiZmQ4YWUzNTktNjRkYy00YTU3LWFiNDEtNTQzOGUyZmRhOTc1In0=';
|
|
|
return config;
|
|
|
},
|
|
|
(error) => {
|
|
|
// 对请求错误做些什么
|
|
|
console.log(error); // for debug
|
|
|
return Promise.reject(error);
|
|
|
}
|
|
|
);
|
|
|
|
|
|
// 响应拦截器
|
|
|
service.interceptors.response.use(
|
|
|
(response) => {
|
|
|
// 对响应数据做点什么,例如根据状态码判断成功或失败
|
|
|
const res = response.data;
|
|
|
if (response.status === 200) {
|
|
|
return res;
|
|
|
} else {
|
|
|
return Promise.reject(res);
|
|
|
}
|
|
|
},
|
|
|
(error) => {
|
|
|
// 对响应错误做点什么
|
|
|
/***** 接收到异常响应的处理开始 *****/
|
|
|
if (error && error.response) {
|
|
|
// 1.公共错误处理
|
|
|
// 2.根据响应码具体处理
|
|
|
switch (error.response.status) {
|
|
|
case 400:
|
|
|
error.message = "错误请求";
|
|
|
break;
|
|
|
case 401:
|
|
|
error.message = "错误请求";
|
|
|
break;
|
|
|
case 423:
|
|
|
// token刷新失效
|
|
|
error.message = error.response.data + "请重新登录";
|
|
|
break;
|
|
|
case 403:
|
|
|
error.message = "拒绝访问";
|
|
|
break;
|
|
|
case 404:
|
|
|
error.message = "请求错误,未找到该资源";
|
|
|
break;
|
|
|
case 405:
|
|
|
error.message = "请求方法未允许";
|
|
|
break;
|
|
|
case 408:
|
|
|
error.message = "请求超时";
|
|
|
break;
|
|
|
case 500:
|
|
|
error.message = "服务器端出错";
|
|
|
break;
|
|
|
case 501:
|
|
|
error.message = "网络未实现";
|
|
|
break;
|
|
|
case 502:
|
|
|
error.message = "网络错误";
|
|
|
break;
|
|
|
case 503:
|
|
|
error.message = "服务不可用";
|
|
|
break;
|
|
|
case 504:
|
|
|
error.message = "网络超时";
|
|
|
break;
|
|
|
case 505:
|
|
|
error.message = "http版本不支持该请求";
|
|
|
break;
|
|
|
default:
|
|
|
error.message = `连接错误${error.response.status}`;
|
|
|
}
|
|
|
} else {
|
|
|
error.message = "连接服务器失败";
|
|
|
}
|
|
|
/***** 处理结束 *****/
|
|
|
//如果不需要错误处理,以上的处理过程都可省略
|
|
|
return Promise.reject(error.response);
|
|
|
}
|
|
|
);
|
|
|
|
|
|
export default service;
|