http.ts 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import axios from 'axios'
  2. // import history from './history'
  3. // import { getTokenInfo } from './storage'
  4. // 请求基地址
  5. export const baseURL = process.env.NODE_ENV === "development" ? 'http://192.168.20.55:8032' : ''
  6. // export const baseURL = process.env.NODE_ENV === "development" ? 'https://hnbwg.4dage.com' : ''
  7. // 创建 axios 实例
  8. const http = axios.create({
  9. baseURL,
  10. timeout: 5000,
  11. })
  12. // 请求拦截器
  13. http.interceptors.request.use(
  14. function (config: any) {
  15. // const { token } = getTokenInfo()
  16. // if (token) config.headers.Authorization = `Bearer ${token}`
  17. return config
  18. },
  19. function (err) {
  20. return Promise.reject(err)
  21. },
  22. )
  23. // 响应拦截器
  24. http.interceptors.response.use(
  25. function (response) {
  26. return response.data
  27. },
  28. async function (err) {
  29. // 如果因为网络原因,response没有,给提示消息
  30. if (!err.response) {
  31. alert('网络繁忙,请稍后重试')
  32. } else {
  33. // 网络没问题,后台返回了有数据
  34. // token过期
  35. // if (err.response.status === 401) {
  36. // history.push('/Login')
  37. // }
  38. }
  39. return Promise.reject(err)
  40. },
  41. )
  42. // 导出 axios 实例
  43. export default http