request.js 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import axios from 'axios'
  2. const service = axios.create({
  3. // baseURL: 'http://192.168.0.135:8016', // 本地调试
  4. // baseURL: 'https://jmctcl.jiangmen.cn/api', // 甲方服务器调试
  5. // baseURL: 'http://project.4dage.com:8016', // 测试环境
  6. baseURL: '/api', // 打包
  7. timeout: 5000
  8. })
  9. // 请求拦截器
  10. service.interceptors.request.use(function (config) {
  11. // console.log('触发拦截器')
  12. // 在发送请求之前做些什么:看看有没有token,如果有通过请求头的方式传递token
  13. const token = localStorage.getItem('JMYZU_token')
  14. if (token) { // 判断是否有token,有,则
  15. // config.headers['Authorization'] = token
  16. config.headers.token = token
  17. config.headers.TRACE_ID = Date.now()
  18. }
  19. return config
  20. }, function (error) {
  21. // 对请求错误做些什么
  22. return Promise.reject(error)
  23. })
  24. // 添加响应拦截器
  25. service.interceptors.response.use(function (response) {
  26. // console.log('触发相应拦截器', response)
  27. // 对响应数据做点什么--response就是发送每个请求的返回值
  28. if (response.data.code === 5001 || response.data.code === 5002) {
  29. localStorage.removeItem('JMYZU_token')
  30. location.reload(true)
  31. }
  32. return response.data
  33. }, function (error) {
  34. // 对响应错误做点什么
  35. return Promise.reject(error)
  36. })
  37. export default service