request.js 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import { defineNuxtPlugin } from '#app'
  2. import axios from 'axios'
  3. import { getToken } from '@/store/useCookieStore'
  4. export default defineNuxtPlugin(nuxtApp => {
  5. //获取当前域名
  6. let currentDomain = '';
  7. const url = useRequestURL();
  8. currentDomain = url.host;
  9. let Url = {
  10. //正式环境
  11. // webUrl: 'https://flzxw.bjzxtw.org.cn', //接口地址
  12. // CwebUrl: currentDomain //页面地址
  13. //pre环境
  14. webUrl: 'https://apipre1.bjzxtw.org.cn', //pre接口地址
  15. // webUrl: 'http://192.168.1.201:9501', //冯蕊接口地址
  16. CwebUrl: currentDomain //页面地址
  17. }
  18. const service = axios.create({
  19. baseURL: Url.webUrl
  20. });
  21. // 请求拦截器
  22. service.interceptors.request.use(config => {
  23. // console.log("请求拦截器",config);
  24. // 从cookie中获取数据
  25. const token = getToken()
  26. //const token = "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJwaHBlcjY2Ni9qd3QiLCJ1aWQiOjc2LCJ1c2VyX25hbWUiOiIxNzM0MDUzMTQ1NCIsIm1vYmlsZSI6IjE3MzExMTExMTExIiwiZW1haWwiOiIiLCJsZXZlbF9pZCI6MCwidHlwZV9pZCI6MTAwMDAsImp3dF9zY2VuZSI6ImRlZmF1bHQiLCJqdGkiOiJkZWZhdWx0XzY3ZDBmYmQ2OWUwZDk2LjY3MTU1NDM5IiwiaWF0IjoxNzQxNzQ5MjA2LCJuYmYiOjE3NDE3NDkyMDYsImV4cCI6MTc0MTgzNTYwNn0.1pfYged1EOSVaQNdAlaKA_kvBJLgOkWKkk38yog_xoU"
  27. if (token) {
  28. config.headers.token = token;
  29. }
  30. config.headers.userurl = Url.CwebUrl;
  31. return config;
  32. }, error => {
  33. console.log(error)
  34. return Promise.reject(error);
  35. });
  36. // 响应拦截器
  37. service.interceptors.response.use(response => {
  38. if (response.status >= 200 && response.status <= 210) {
  39. return response.data;
  40. } else if (response.status == 404) {
  41. console.error(response.data.errmsg);
  42. } else {
  43. }
  44. },
  45. error => {
  46. // console.log(1);
  47. console.log('err' + error);
  48. })
  49. return {
  50. provide: {
  51. axios: service
  52. }
  53. }
  54. });