index.js 930 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import { BASE_URL, TIMEOUT } from "./config.js";
  2. import Cache from "@/utils/cache.js";
  3. // 引入请求库
  4. import Request from "@/utils/luch-request/luch-request/index.js";
  5. const http = new Request({
  6. baseURL: BASE_URL,
  7. timeout: TIMEOUT
  8. });
  9. // 请求拦截器
  10. http.interceptors.request.use(
  11. (config)=>{
  12. // 根据请求信息里携带的自定义属性,判断当前请求是否需要携带token
  13. const needToken = config.custom.needToken || false;
  14. if (needToken) {
  15. const token = Cache.getCache('token');
  16. config.header['Auth-Token'] = token;
  17. }
  18. return config;
  19. },
  20. // 失败拦截
  21. (error)=>{
  22. return Promise.reject(error)
  23. }
  24. )
  25. // 响应拦截器
  26. http.interceptors.response.use(
  27. // 响应成功拦截
  28. (response)=>{
  29. const { data } = response;
  30. return data;
  31. },
  32. // 响应失败拦截
  33. (err)=>{
  34. const { msg } = err
  35. if(msg){
  36. this.$showToast(msg)
  37. }
  38. console.log(err)
  39. }
  40. )
  41. export default http;