Vue-axios 在vue cli中封装
common/post.js
import axios from 'axios' // 引入axios
import qs from 'qs' // 引入qs
axios.defaults.baseURL = '/apis' //请求地址的域名(此处使用了代理所以直接填/apis // 拦截响应response,进行错误处理
axios.interceptors.response.use(function (response) {
// 成功处理
// code处理
response.code = response.data.code
switch (response.status) {
case 200:
break;
case 400: response.data.msg = '错误请求'
break;
case 401: response.data.msg = '未授权,请重新登录'
break;
case 403: response.data.msg = '拒绝访问'
break;
case 404: response.data.msg = '请求错误,未找到该资源'
break;
case 405: response.data.msg = '请求方法未允许'
break;
case 408: response.data.msg = '请求超时'
break;
case 500: response.data.msg = '服务器端出错'
break;
case 501: response.data.msg = '网络未实现'
break;
case 502: response.data.msg = '网络错误'
break;
case 503: response.data.msg = '服务不可用'
break;
case 504: response.data.msg = '网络超时'
break;
case 505: response.data.msg = 'http版本不支持该请求'
break;
}
return response;
}, function (error) { return Promise.reject(error);
}); async function requestGet(options) {
// 这里主要是post方法的封装,get方法同理
options.method = 'post'
if (options.config === 'formData') {
options.headers = {'Content-Type': 'multipart/form-data'}
} else {
options.data = qs.stringify(options.data)
}
return new Promise((resolve,reject) => {
axios(options).then(res => {
// 这里主要根据后来返回的数据作判断,请根据实际情况
if(res.data.code == '200') {
resolve(res.data)
} else {
reject(res.data)
}
}).catch(error => {
// 显示拦截器对respone处理后的可读错误
console.log(error)
})
})
} export default { requestGet }
main.js
import Post from '../static/js/post.js'/*post公共*/
const { requestPost } = Post/*post*/
Vue.prototype.$requestPost = requestPost // post挂载到全局上
页面中:
acceptlist(){
this.$requestGet({
url: this.http+'/cdk/paperTypeMobile/findList',
data: {}
}).then(res => {
console.log(res)
this.columns=res.obj
}).catch(err=>{
console.log(err)
})
}
注:main.js和post.js中要引入axios、qs
Vue-axios 在vue cli中封装的更多相关文章
- vue axios封装以及登录token过期跳转问题
Axios配置JWT/封装插件/发送表单数据 首先请务必已仔细阅读 Axios 文档并熟悉 JWT: 中文文档 JWT 中文文档 安装 npm install axios npm install es ...
- vue axios 简单封装以及思考
先安装 axios npm install axios axios的详细介绍以及用法 就不多说了请 移步 github ➡️ https://github.com/axios/axios 下面是简单 ...
- vue axios 封装(二)
封装二: http.js import axios from 'axios' import storeHelper from './localstorageHelper' // 全局设置 const ...
- axios在Vue中的简单应用(一)
1.安装axios: npm install --save axios vue-axios 2.安装qs: qs.stringify(data)可以解决data数据格式问题 npm install - ...
- (vue.js)axios interceptors 拦截器中添加headers 属性
(vue.js)axios interceptors 拦截器中添加headers 属性:http://www.codes51.com/itwd/4282111.html 问题: (vue.js)axi ...
- axios interceptors 拦截 , 页面跳转, token 验证 Vue+axios实现登陆拦截,axios封装(报错,鉴权,跳转,拦截,提示)
Vue+axios实现登陆拦截,axios封装(报错,鉴权,跳转,拦截,提示) :https://blog.csdn.net/H1069495874/article/details/80057107 ...
- 【实战】Vue全家桶(vue + axios + vue-router + vuex)搭建移动端H5项目
使用Vue全家桶开发移动端页面. 本博文默认已安装node.js. github链接 一.准备工作 安装vue npm install vue 安装脚手架vue-cli npm install -g ...
- vue axios配置 发起请求加载loading请求结束关闭loading
axios带有请求拦截器,避免在每个请求里面加loading重复操作,可以封装进去,在请求开始时加载loading层,请求结束关闭,loading层用vux的loading加载 axios.js im ...
- vue+axios+promise实际开发用法
axios它是基于promise的http库,可运行在浏览器端和node.js中,然后作者尤雨溪也是果断放弃了对其官方库vue-resource的维护,直接推荐axios库,小编我也是从vue-res ...
随机推荐
- Kubernetes 调度器实现初探
Kubernetes 调度器 Kubernetes 是一个基于容器的分布式调度器,实现了自己的调度模块.在Kubernetes集群中,调度器作为一个独立模块通过pod运行.从几个方面介绍Kuberne ...
- 【转载】遗传算法及matlab实现
摘自https://www.cnblogs.com/LoganChen/p/7509702.html 1.遗传算法介绍 遗传算法,模拟达尔文进化论的自然选择和遗产学机理的生物进化构成的计算模型,一种不 ...
- 软件测试 → 第二章 基础-> 软件缺陷与缺陷管理
一.缺陷定义与分类 1.1.软件缺陷 定义:在软件工程整个生命周期中任何背离需求.无法正确完成用户所要求的功能的问题,包括存在于组件.设备.或系统软件中因异常条件不支持而导致系统失败等都属于缺陷. 从 ...
- C++模板进阶指南:SFINAE
C++模板进阶指南:SFINAE 空明流转(https://zhuanlan.zhihu.com/p/21314708) SFINAE可以说是C++模板进阶的门槛之一,如果选择一个论题来测试对C++模 ...
- keystone同步数据库的时候提示error
keystone 在同步的时候报出以下错误: su -s /bin/sh -c "keystone-manage db_sync" keystone CRITICAL keysto ...
- 【Leetcode链表】反转链表 II(92)
题目 反转从位置 m 到 n 的链表.请使用一趟扫描完成反转. 说明: 1 ≤ m ≤ n ≤ 链表长度. 示例: 输入: 1->2->3->4->5->NULL, m ...
- ZOJ 3956 Course Selection System [01背包]
http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3956 题意:就是给你Hi,Ci的值,问怎么取使得下面那个式子的值最大: 理 ...
- poj1459 最大流Dinic
比较简单. #include<stdio.h> #include<string.h> #include<queue> #define maxn 110 #defin ...
- 惊闻!SOIC 和 SOP 竟然是有区别的
目录 惊闻!SOIC 和 SOP 竟然是有区别的 原因 对比 结论 惊闻!SOIC 和 SOP 竟然是有区别的 原因 一直以为 SOIC 和 SOP 是一样的,只是叫法不同. 对比 今天仔细查了才发现 ...
- Python中并发前戏之操作系统
进程: 1.串行: 一个任务完完整整地运行完毕后,才能运行下一个任务 2.并发 看起来多个任务是同时运行的即可,单核也可以实现并发 3.并行: 真正意义上多个任务的同时运行,只有多核才实现并行 1.什 ...