request.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import axios from "axios";
  2. // 创建一个axios实例
  3. const service = axios.create({
  4. baseURL: process.env.VUE_APP_BASE_API, // 设置api的基础路径
  5. timeout: 5000, // 请求超时时间
  6. });
  7. // 请求拦截器
  8. service.interceptors.request.use(
  9. (config) => {
  10. // 在发送请求之前做些什么
  11. // 例如:添加token
  12. // const token = localStorage.getItem("token");
  13. // if (token) {
  14. // config.headers["Authorization"] = `Bearer ${token}`;
  15. // }
  16. return config;
  17. },
  18. (error) => {
  19. // 对请求错误做些什么
  20. return Promise.reject(error);
  21. }
  22. );
  23. // 响应拦截器
  24. service.interceptors.response.use(
  25. (response) => {
  26. // 对响应数据做点什么
  27. const res = response.data;
  28. // if (res.code !== 200) {
  29. // // 处理错误响应
  30. // console.error("Error:", res.message);
  31. // return Promise.reject(new Error(res.message || "Error"));
  32. // } else {
  33. // return res;
  34. // }
  35. return res;
  36. },
  37. (error) => {
  38. // 对响应错误做点什么
  39. console.error("Response Error:", error);
  40. return Promise.reject(error);
  41. }
  42. );
  43. // 封装get方法
  44. export function clientGet(url, params) {
  45. return service.get(url, { params });
  46. }
  47. // 封装post方法
  48. export function clientPost(url, data) {
  49. return service.post(url, data);
  50. }