vue项目封装axios请求
目录:
一,src/utils/request.js
import axios from 'axios'
import { getToken } from '@/utils/auth'
import store from '@/store'const service = axios.create({baseURL: process.env.VUE_APP_BASE_API,withCredentials: true,timeout: 5000,// headers:{ // "Access-Control-Allow-Origin": '*',// "Access-Control-Allow-Headers": 'Origin, Content-Type, X-Auth-Token',// "Access-Control-Allow-Methods": "POST, GET, PUT, OPTIONS, DELETE" ,// },
})// request interceptor
service.interceptors.request.use(config => {// do something before request is sentif(store.getters.token == null){// 首次登录--固定头部内容config.headers.client_id = 'jeecp'config.headers.client_secret = 'webApp'}else{config.headers.Authorization = 'Bearer '+ token}// if(config.method == 'post' || config.method == 'put'){// 在每个请求中加 parkId// config.data['parkId'] = Cookies.get('parkId')// console.log(config)// }return config},error => {// do something with request errorconsole.log(error) // for debugreturn Promise.reject(error)}
)// response interceptor
service.interceptors.response.use(/*** Determine the request status by custom code* Here is just an example* You can also judge the status by HTTP Status Code*/response => {const res = response.data// return resif(res.code != 0){Message({message: res.message || 'Error',type: 'error',duration: 5 * 1000})// 报错--根据 code 处理console.log("请求报错啦: ", res)}else{// 成功return res}},error => {console.log('err' + error) // for debugMessage({message: error.message,type: 'error',duration: 5 * 1000})return Promise.reject(error)}
)export default service
二,src/utils/api.js
import request from '@/utils/request'
import store from '../store'// post
export function getMessage(page, size, data) {return request({url: store.getters.gateway2 + '/admin/info_management/v1/page_information/' + page + '/' + size,method: 'post',data})
}export function getNoApprove(page, size, type, title, startTime, endTime) {return request({url: store.getters.gateway2 + '/informationAudit/list/' + page + '/' + size,method: 'get',params: {type,title,startTime,endTime,issue: 1,examined: 0}})
}export function getMessageByIdToApprove(data, infoId) {return request({url: store.getters.gateway2 + '/admin/info_management/v1/confirm/',method: 'put',data,params:{infoId}})
}export function delUploadImg(url) {return request({url: store.getters.gateway2 + '/upload/delFile',method: 'delete',url})
}
注意
传的参数类型:
1,url
url: store.getters.gateway2 + '/informationAudit/list/' + page + '/' + size
2,params
params:{infoId
}
3,query
data,
三,调用接口
import { addMessage } from '@/api/message'addMessage(this.formData).then(res => {console.log("add", res)if(res.code === 0){this.$message({type: 'succees',message: '添加成功!'});}else{this.$message({type: 'error',message: '请求出错!'});}}
vue项目封装axios请求相关推荐
- vue项目中 axios请求拦截器与取消pending请求功能 - 年少、 - 博客园
在开发vue项目中,请求是不可缺少的,在发送请求时常常需要统一处理一些请求头参数等设置与响应事件,这时利用请求拦截器再好不过. 这里以axios请求为例 实现了设置统一请求头添加token, 其中to ...
- vue项目封装axios
先看一下 我们的结构: 第一阶段 配置: api文件夹说明 api文件夹存放接口 user.js import request from "../utils/request";// ...
- vue打包后axios返回html,vue项目封装axios并访问接口
import axios from 'axios'import QSfrom 'qs';//import store from '@/store/index.js'; import { Message ...
- vue项目中 axios 请求成功 却进入catch中
这个算是线上的一个小问题吧 就是我本来打算对接口返回的数据进行统一处理. 发现有的请求 成功后并没有走 Promise.then的方法中, 像这种情况的话 网上网友的有的说是我的then的方法里面 有 ...
- 【跨域问题】Vue简单封装axios—解决post请求后端接收不到参数问题
原因分析: 1. 传参数据没有序列化? 解决办法: [推荐] [推荐阅读] vue+axios+qs序列化 "三步解析"[含demo实例]- 代码篇 2. 服务端接受数据格式参数配 ...
- Vue3+TypeScript 项目封装axios
Vue3+TypeScript 项目封装axios VUE CLI 中代码目录解构 config.js let BASE_URL = '' const TIME_OUT = 10000 //区分环境不 ...
- 封装 axios 请求
vue 封装 js 方法 一.安装 axios 并引入: Axios 中文说明 安装axios:npm install axios 因为基本上全局都会使用到 axios 方法,所以在 main.js ...
- vue项目安装axios - cmd篇
vue项目的跨域请求问题, 首先,用 axios 比较好,现在是 vue2 官方推荐,vue-resource 已经不再维护了. . 参考文章1:axios可以解决跨域访问的问题吗? 注意: vue项 ...
- springboot+Vue项目使用axios实现跨域(CROS)
springboot+Vue项目使用axios实现(CROS)跨域 一.项目背景 二.跨域资源共享 CORS 详解 三.axios跨域实现 3.1 安装qs模块 3.2 axios使用 四.sprin ...
最新文章
- 一道题弄明白二维数组的指针
- Tensorflow—变量
- 点分治经典_动态点分治
- kafka 的安装部署
- BeginnersBook Kotlin 教程
- 程序员常用字体(vs2008配色方案)
- Hadoop前期准备--centos6.4
- 智慧女人——你懂吗?
- map 详解(C++)
- 【故障诊断分析】基于matlab小波包能量分析轴承故障诊断【含Matlab源码 1620期】
- Excel数据分析案例一——业绩达成分析
- [es7]es查询实践示例
- 【CV2】Python中cv2使用小窗口显示高分辨率图片
- 使用微信同声传译插件开发一款翻译类的小程序
- 对象的15位、18位中国大陆身份证号码解析、验证工具
- java文件输入流FileInputStream
- 运用区块链溯源有什么意义呢?
- 从endnote导出参考文献发现没有参考文献信息
- 反积分饱和 程序_三面大疆惨败,因为不懂PID的积分抗饱和
- python 文件路径及time模块记录
热门文章
- c语言程序求一一组数平均值,编写求一组整数的和与平均值的程序
- pat 乙级 1023 组个最小数(C++)
- 什么是SFP光模块?SFP光模块小知识介绍!
- [渝粤教育] 中国地质大学 事故应急救援 复习题
- 【2020.12.30更新】信号处理常用公式(一)
- mysql order by date_Best practice question for MySQL: order by id or date?
- JAVA中的适配器应用_Java适配器模式应用之电源适配器功能详解
- pycharm是不是python编程_使用PyCharm进行python开发的简介
- 190. 颠倒二进制位
- numpy的使用数组的创建2