| 1 |
- {"remainingRequest":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/thread-loader/dist/cjs.js!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/babel-loader/lib/index.js!/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/src/libs/axios.js","dependencies":[{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/src/libs/axios.js","mtime":1665686543812},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/cache-loader/dist/cjs.js","mtime":1665684022107},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/thread-loader/dist/cjs.js","mtime":1665684003955},{"path":"/usr/local/develop/php/www/waibao/NN2022100801/NN2022100801/addons/admin/node_modules/babel-loader/lib/index.js","mtime":1665684010704}],"contextDependencies":[],"result":["import axios from 'axios';\nimport store from '@/store';\nimport router from '../router'; // import { Spin } from 'iview'\n\nconst addErrorLog = errorInfo => {\n const {\n statusText,\n status,\n request: {\n responseURL\n }\n } = errorInfo;\n let info = {\n type: 'ajax',\n code: status,\n mes: statusText,\n url: responseURL\n };\n\n if (status == 401 && statusText == 'Unauthorized') {\n store.dispatch('handleLogOut');\n router.push({\n name: 'login'\n });\n }\n\n if (!responseURL.includes('save_error_logger')) store.dispatch('addErrorLog', info);\n};\n\nclass HttpRequest {\n constructor(baseUrl = baseURL) {\n this.baseUrl = baseUrl;\n this.queue = {};\n }\n\n getInsideConfig() {\n const config = {\n baseURL: this.baseUrl,\n headers: {//\n }\n };\n return config;\n }\n\n destroy(url) {\n delete this.queue[url];\n\n if (!Object.keys(this.queue).length) {// Spin.hide()\n }\n }\n\n interceptors(instance, url) {\n // 请求拦截\n instance.interceptors.request.use(config => {\n if (store.state.user.token) {\n config.headers.common['Authorization'] = 'Bearer ' + store.state.user.token; // config.headers.common['accessToken'] = store.state.user.token\n // config.data = config.data || {}\n // config.data['name'] = store.state.user.name\n // console.log(config)\n } // 添加全局的loading...\n\n\n if (!Object.keys(this.queue).length) {// Spin.show() // 不建议开启,因为界面不友好\n }\n\n this.queue[url] = true;\n return config;\n }, error => {\n return Promise.reject(error);\n }); // 响应拦截\n\n instance.interceptors.response.use(res => {\n this.destroy(url);\n const {\n data,\n status\n } = res; // console.log(res)\n\n return {\n data,\n status\n };\n }, error => {\n this.destroy(url);\n addErrorLog(error.response);\n return Promise.reject(error);\n });\n }\n\n request(options) {\n const instance = axios.create();\n options = Object.assign(this.getInsideConfig(), options);\n this.interceptors(instance, options.url);\n return instance(options);\n }\n\n}\n\nexport default HttpRequest;",null]}
|