vue-admin-template 修改request.js 作者:马育民 • 2022-09-30 13:49 • 阅读:10264 # 修改request.js 原文件中,请求拦截器要携带token、响应拦截器做了一些校验,在这里都不需要了,改成下面代码: **注意:** - 返回数据中要有 status 属性 - 返回数据中要有 message 属性 ``` import axios from 'axios' import { MessageBox, Message } from 'element-ui' const service = axios.create({ baseURL: "http://localhost:8080", // url = base url + request url withCredentials: true, // 发送 cookies timeout: 5000 // request timeout }) // response interceptor service.interceptors.response.use( response => { const res = response.data if (res.status !== 0) { // ※※※※※※ 注意:返回数据中要有 status 属性 Message({ message: res.message || 'Error', // ※※※※※※ 注意:返回数据中要有 message 属性 type: 'error', duration: 5 * 1000 }) return Promise.reject(new Error(res.message || 'Error')) } else { return response } }, error => { console.log('err' + error) // for debug Message({ message: error.message, type: 'error', duration: 5 * 1000 }) return Promise.reject(error) } ) export default service ``` # 使用 ### 引入 request.js ``` import request from '@/utils/request' ``` ### 调用 **登录:** ``` request({ url: '/login', data:this.loginForm, method: 'post', }) .then((res) => { console.log(res); console.log(res.data) if(res.data.status == 0){ this.$router.push({ path: this.redirect || '/' }) }else{ this.$message.error(res.data.message); } this.loading = false }) .catch(function (error) {// 请求失败处理 console.log(error); this.loading = false }); ``` **其他请求:** ``` request({ url: '/patient/list', data:{ name: this.name, }, method: 'post', }).then( (res) => { console.log(res.data.list); this.tableData=res.data.list this.total=res.data.total // 总共记录数 this.loading=false // 取消loading }) .catch(function (error) {// 请求失败处理 console.log(error); }); ``` 原文出处:http://malaoshi.top/show_1IX48sP029XE.html