request.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. import axios from "axios";
  2. import store from "../store";
  3. import router from "../router";
  4. import qs from "qs"
  5. // 创建axios实例
  6. const service = axios.create({
  7. baseURL: "/api",//process.env.VUE_APP_URL, // api 的 VUE_APP_URL
  8. timeout: 30000 // 请求超时时间
  9. });
  10. // request拦截器,在请求之前做一些处理
  11. service.interceptors.request.use(
  12. config => {
  13. if(config.url != "/common/uploadFile") {
  14. config.data = qs.stringify(config.data);
  15. config.headers["Content-Type"] = "application/x-www-form-urlencoded; charset=UTF-8";
  16. } else {
  17. config.dataType = "json";
  18. config.processData= false;
  19. config.contentType= false;
  20. }
  21. if (localStorage.userInfo) {
  22. config.headers["Token"] = JSON.parse(localStorage.userInfo).id;
  23. }
  24. return config;
  25. },
  26. error => {
  27. return Promise.reject(error);
  28. }
  29. );
  30. // response 拦截器,数据返回后进行一些处理
  31. service.interceptors.response.use(
  32. response => {
  33. if(response.status == 200) {
  34. const res = response.data;
  35. return res;
  36. } else {
  37. return Promise.reject("网络异常");
  38. }
  39. },
  40. error => {
  41. return Promise.reject("网络异常");
  42. }
  43. );
  44. export default service;