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.

1 lines
6.2 KiB

{"ast":null,"code":"import axios from 'axios';\nimport { ElMessage } from 'element-plus';\nimport router from '@/router';\nimport store from '@/store';\nconst service = axios.create({\n baseURL: '/api',\n timeout: 5000\n});\nservice.interceptors.request.use(config => {\n const token = localStorage.getItem('token');\n if (token) {\n config.headers['Authorization'] = `Bearer ${token}`;\n }\n return config;\n}, error => {\n return Promise.reject(error);\n});\nservice.interceptors.response.use(response => {\n const res = response.data;\n console.log('响应数据:', res);\n if (typeof res === 'string') {\n return {\n code: 200,\n message: res,\n data: null\n };\n }\n if (res.records !== undefined) {\n return {\n code: 200,\n message: 'success',\n data: res\n };\n }\n if (res === true || res === '') {\n return {\n code: 200,\n message: 'success'\n };\n }\n if (res.code !== undefined) {\n return res;\n }\n return {\n code: 200,\n message: 'success',\n data: res\n };\n}, error => {\n console.error('请求错误:', error);\n if (error.response?.status === 503) {\n ElMessage.error('服务暂时不可用,请稍后重试');\n return Promise.reject(new Error('服务暂时不可用'));\n }\n if (error.response?.status === 401) {\n store.dispatch('logout');\n router.push('/login');\n ElMessage.error('登录已过期,请重新登录');\n } else if (error.response?.status === 403) {\n ElMessage.error('您没有权限执行此操作');\n } else if (error.response?.data?.message) {\n ElMessage.error(error.response.data.message);\n } else {\n ElMessage.error('网络请求失败,请稍后重试');\n }\n return Promise.reject(error);\n});\nexport default service;","map":{"version":3,"names":["axios","ElMessage","router","store","service","create","baseURL","timeout","interceptors","request","use","config","token","localStorage","getItem","headers","error","Promise","reject","response","res","data","console","log","code","message","records","undefined","status","Error","dispatch","push"],"sources":["D:/language/VScode/Front-end logistics/src/utils/request.js"],"sourcesContent":["import axios from 'axios'\r\nimport { ElMessage } from 'element-plus'\r\nimport router from '@/router'\r\nimport store from '@/store'\r\n\r\nconst service = axios.create({\r\n baseURL: '/api',\r\n timeout: 5000\r\n})\r\n\r\nservice.interceptors.request.use(\r\n config => {\r\n const token = localStorage.getItem('token')\r\n if (token) {\r\n config.headers['Authorization'] = `Bearer ${token}`\r\n }\r\n return config\r\n },\r\n error => {\r\n return Promise.reject(error)\r\n }\r\n)\r\n\r\nservice.interceptors.response.use(\r\n response => {\r\n const res = response.data\r\n console.log('响应数据:', res)\r\n \r\n if (typeof res === 'string') {\r\n return {\r\n code: 200,\r\n message: res,\r\n data: null\r\n }\r\n }\r\n \r\n if (res.records !== undefined) {\r\n return {\r\n code: 200,\r\n message: 'success',\r\n data: res\r\n }\r\n }\r\n \r\n if (res === true || res === '') {\r\n return {\r\n code: 200,\r\n message: 'success'\r\n }\r\n }\r\n \r\n if (res.code !== undefined) {\r\n return res\r\n }\r\n \r\n return {\r\n code: 200,\r\n message: 'success',\r\n data: res\r\n }\r\n },\r\n error => {\r\n console.error('请求错误:', error)\r\n \r\n if (error.response?.status === 503) {\r\n ElMessage.error('服务暂时不可用,请稍后重试')\r\n return Promise.reject(new Error('服务暂时不可用'))\r\n }\r\n \r\n if (error.response?.status === 401) {\r\n store.dispatch('logout')\r\n router.push('/login')\r\n ElMessage.error('登录已过期,请重新登录')\r\n } else if (error.response?.status === 403) {\r\n ElMessage.error('您没有权限执行此操作')\r\n } else if (error.response?.data?.message) {\r\n ElMessage.error(error.response.data.message)\r\n } else {\r\n ElMessage.error('网络请求失败,请稍后重试')\r\n }\r\n return Promise.reject(error)\r\n }\r\n)\r\n\r\nexport default service "],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,SAASC,SAAS,QAAQ,cAAc;AACxC,OAAOC,MAAM,MAAM,UAAU;AAC7B,OAAOC,KAAK,MAAM,SAAS;AAE3B,MAAMC,OAAO,GAAGJ,KAAK,CAACK,MAAM,CAAC;EAC3BC,OAAO,EAAE,MAAM;EACfC,OAAO,EAAE;AACX,CAAC,CAAC;AAEFH,OAAO,CAACI,YAAY,CAACC,OAAO,CAACC,GAAG,CAC9BC,MAAM,IAAI;EACR,MAAMC,KAAK,GAAGC,YAAY,CAACC,OAAO,CAAC,OAAO,CAAC;EAC3C,IAAIF,KAAK,EAAE;IACTD,MAAM,CAACI,OAAO,CAAC,eAAe,CAAC,GAAG,UAAUH,KAAK,EAAE;EACrD;EACA,OAAOD,MAAM;AACf,CAAC,EACDK,KAAK,IAAI;EACP,OAAOC,OAAO,CAACC,MAAM,CAACF,KAAK,CAAC;AAC9B,CACF,CAAC;AAEDZ,OAAO,CAACI,YAAY,CAACW,QAAQ,CAACT,GAAG,CAC/BS,QAAQ,IAAI;EACV,MAAMC,GAAG,GAAGD,QAAQ,CAACE,IAAI;EACzBC,OAAO,CAACC,GAAG,CAAC,OAAO,EAAEH,GAAG,CAAC;EAEzB,IAAI,OAAOA,GAAG,KAAK,QAAQ,EAAE;IAC3B,OAAO;MACLI,IAAI,EAAE,GAAG;MACTC,OAAO,EAAEL,GAAG;MACZC,IAAI,EAAE;IACR,CAAC;EACH;EAEA,IAAID,GAAG,CAACM,OAAO,KAAKC,SAAS,EAAE;IAC7B,OAAO;MACLH,IAAI,EAAE,GAAG;MACTC,OAAO,EAAE,SAAS;MAClBJ,IAAI,EAAED;IACR,CAAC;EACH;EAEA,IAAIA,GAAG,KAAK,IAAI,IAAIA,GAAG,KAAK,EAAE,EAAE;IAC9B,OAAO;MACLI,IAAI,EAAE,GAAG;MACTC,OAAO,EAAE;IACX,CAAC;EACH;EAEA,IAAIL,GAAG,CAACI,IAAI,KAAKG,SAAS,EAAE;IAC1B,OAAOP,GAAG;EACZ;EAEA,OAAO;IACLI,IAAI,EAAE,GAAG;IACTC,OAAO,EAAE,SAAS;IAClBJ,IAAI,EAAED;EACR,CAAC;AACH,CAAC,EACDJ,KAAK,IAAI;EACPM,OAAO,CAACN,KAAK,CAAC,OAAO,EAAEA,KAAK,CAAC;EAE7B,IAAIA,KAAK,CAACG,QAAQ,EAAES,MAAM,KAAK,GAAG,EAAE;IAClC3B,SAAS,CAACe,KAAK,CAAC,eAAe,CAAC;IAChC,OAAOC,OAAO,CAACC,MAAM,CAAC,IAAIW,KAAK,CAAC,SAAS,CAAC,CAAC;EAC7C;EAEA,IAAIb,KAAK,CAACG,QAAQ,EAAES,MAAM,KAAK,GAAG,EAAE;IAClCzB,KAAK,CAAC2B,QAAQ,CAAC,QAAQ,CAAC;IACxB5B,MAAM,CAAC6B,IAAI,CAAC,QAAQ,CAAC;IACrB9B,SAAS,CAACe,KAAK,CAAC,aAAa,CAAC;EAChC,CAAC,MAAM,IAAIA,KAAK,CAACG,QAAQ,EAAES,MAAM,KAAK,GAAG,EAAE;IACzC3B,SAAS,CAACe,KAAK,CAAC,YAAY,CAAC;EAC/B,CAAC,MAAM,IAAIA,KAAK,CAACG,QAAQ,EAAEE,IAAI,EAAEI,OAAO,EAAE;IACxCxB,SAAS,CAACe,KAAK,CAACA,KAAK,CAACG,QAAQ,CAACE,IAAI,CAACI,OAAO,CAAC;EAC9C,CAAC,MAAM;IACLxB,SAAS,CAACe,KAAK,CAAC,cAAc,CAAC;EACjC;EACA,OAAOC,OAAO,CAACC,MAAM,CAACF,KAAK,CAAC;AAC9B,CACF,CAAC;AAED,eAAeZ,OAAO","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}