axios.config.ts 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import axios from "axios";
  2. // !!!本地开发不要直接修改baseURL,请看 .env.example中的配置说明!!!
  3. const BASEURL = import.meta.env.VITE_BASE_URL;
  4. const axiosInstance = axios.create({
  5. baseURL: BASEURL,
  6. headers: {
  7. 'Content-Type': 'application/json',
  8. },
  9. timeout: 10000,
  10. })
  11. //请求拦截器
  12. axiosInstance.interceptors.request.use(
  13. config => {
  14. // const token = JSON.parse(sessionStorage.getItem('user-storage') as string).state.token
  15. let token = null
  16. if(sessionStorage.getItem('user-storage')){
  17. token = JSON.parse(sessionStorage.getItem('user-storage') as string).token
  18. }
  19. // 如果存在token,则每次请求前加入到请求头中
  20. if (token) config.headers["Authorization"] = token
  21. return config
  22. // let token = null;
  23. //
  24. // if(localStorage.getItem('Authorization')){
  25. // token = localStorage.getItem('Authorization');
  26. // }
  27. // // 如果存在token,则每次请求前加入到请求头中
  28. // if (token) config.headers["Authorization"] = token
  29. // return config
  30. },
  31. error => {
  32. return Promise.reject(error)
  33. }
  34. )
  35. axiosInstance.interceptors.response.use(
  36. response => {
  37. // if (response.data.code === 200) {
  38. // return response.data.data as any
  39. // }
  40. return response
  41. },
  42. error => {
  43. return Promise.reject(error)
  44. }
  45. )
  46. export default axiosInstance