祁阳图书馆智慧大屏
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.4 KiB

12 months ago
12 months ago
12 months ago
12 months ago
  1. import axios from 'axios'
  2. // import { Message } from 'element-ui'
  3. console.log('window.g.ApiUrl', window.g.ApiUrl)
  4. // 创建axios实例
  5. const service = axios.create({
  6. // baseURL: process.env.NODE_ENV === 'production' ? process.env.VUE_APP_BASE_API : '/', // api 的 base_url
  7. // baseURL: process.env.VUE_APP_BASE_API, // api 的 base_url
  8. timeout: 1000 * 30, // 请求超时时间
  9. headers: {
  10. 'Content-Type': 'application/json'
  11. }
  12. })
  13. // request拦截器
  14. service.interceptors.request.use(
  15. config => {
  16. // if (getToken()) {
  17. // config.headers['Authorization'] = getToken() // 让每个请求携带自定义token 请根据实际情况自行修改
  18. // }
  19. switch (config.urlType) {
  20. case 'local':
  21. config.url = (process.env.NODE_ENV === 'production' ? window.g.ApiUrl : process.env.VUE_APP_BASE_API) + config.url
  22. break
  23. case 'interlib':
  24. config.url = (process.env.NODE_ENV === 'production' ? window.g.LibUrl : process.env.VUE_APP_LIB_API) + config.url
  25. break
  26. }
  27. const token = '' // 登录后生成用于识别用户身份,项目不需要直接去掉
  28. config.headers['Authorization'] = token || ''
  29. return config
  30. },
  31. error => {
  32. console.error('error: ', error)
  33. Promise.reject(error)
  34. }
  35. )
  36. // response 拦截器
  37. service.interceptors.response.use(
  38. response => {
  39. return response.data
  40. },
  41. error => {
  42. return Promise.reject(error)
  43. }
  44. )
  45. export default service