范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

Vue项目中使用Axios

  封装请求
  在请求或响应被 then 或 catch 处理前拦截它们 import axios from "axios";  // axios 配置 var instance = axios.create({     headers:{         "Content-Type": "application/json",     },     timeout: 30000,     baseURL: "",   //接口请求地址 })  //拦截重复请求 let pending = []; //声明一个数组用于存储每个ajax请求的取消函数和ajax标识 let cancelToken = axios.CancelToken; let removeRepeatUrl = (config) => {     let comValue = config.method == "get" ? qs.stringify(config.params) : qs.stringify(config.data);     for(let p in pending){         if(pending[p].u === config.url + "&" + config.method + "&" + comValue) { //当前请求在数组中存在时执行函数体             pending[p].f();         //执行取消操作             pending.splice(p, 1);   //把这条记录从数组中移除         }     } } let saveRepeatUrl = (config) =>{     let comValue = config.method == "get" ? qs.stringify(config.params) : qs.stringify(config.data);     console.log(comValue)     config.cancelToken = new cancelToken((c)=>{         pending.push({ u: config.url + "&" + config.method + "&" + comValue, f: c });  // 自定义唯一标识     }); } } }  // 添加请求拦截器 instance.interceptors.request.use(config => {     // 在发送请求之前做些什么,比如传token     removeRepeatUrl(config);       //在一个ajax发送前执行一下取消操作     saveRepeatUrl(config);         //保存请求地址     return config }, error => {     // 对请求错误做些什么     console.log(error) // for debug     return Promise.reject(error); })  // 添加响应拦截器 instance.interceptors.response.use(response => {     removeRepeatUrl(response.config);        //执行取消操作,把已经完成的请求从pending中移除     // 对响应数据做点什么     const res = response.data;     //对错误代码做处理     return response; }, error => {     // 对响应错误做点什么     console.log("err" + error)// for debug     return Promise.reject(error); });  export default instance;  /**  * post 请求方法  * @param url  * @param data  * @returns {Promise}  */ export function post(url, data = {}) {     return new Promise((resolve, reject) => {         instance.post(url, data).then(response => {             //对接口错误码做处理             resolve(response.data);         }, err => {             reject(err);         })     }) }  /**  * get 请求方法  * @param url  * @param data  * @returns {Promise}  */ export function get(url, data = {}) {     return new Promise((resolve, reject) => {         instance.get(url, {             params: data         })         .then(response => {             resolve(response);         })         .catch(err => {             reject(err)         })     }) }  /**  * 封装所有请求  * @param methed  * @param url  * @param data   * @param headers  * @returns {Promise}  */ export function request(methed,url, data = {},headers) {     return new Promise((resolve, reject) => {         instance({             method: methed || "post",             url:url,             params: methed === "get" ? data :"",             data: methed !== "get" ?  data :"",             headers: headers || {"Content-Type":"application/json"},         })         .then(response => {             //对接口错误码做处理             resolve(response.data);         })         .catch(err => {             reject(err)         })     }) }
  调用方式
  在 main.js文件中引用
  import {post} from "./utils/http"
  Vue.prototype.$post = post;
  最好将项目所有接口请求放在一个文件中,方便管理新建文件api.js import {request} from "./axios.js" //用户登录接口 export function userLogin(data){     return request("post","接口地址",data); }  在其他页面引用 import {userLogin} from "./api.js" userLogin({}).then(res=>{      });axios跨域
  在config的index.js文件中的dev属性中添加一个属性proxyTable:proxyTable{     "/api":{         target:"URL",         changeOrigin:true,         pathRewrite:{                "^/api":""         }     } }
  然后在axios里面访问 /api/xxx 就可以成功访问了这种方式只能本地测试环境运行,对正式环境无效(需要配置环境生效)

明星大佬们都选择京东618直播芜湖起飞最近直播圈大事连连,各大企业的掌舵人相继入驻电商直播,如格力董明珠,还有各路明星如陈赫王祖蓝郑爽等人也相继玩起了带货直播。最近带货一哥李佳琦又作为特殊人才落户上海,然后又有阿里某淘公牛集团插座行业的扛把子,增长预期良好亦需合理估值选股理由营收利润双增长新股上市行业龙头证券简称公牛集团评级AAA数据截止日期2019年9月30日单位亿元证券代码603195成立日期1995年所在地浙江慈溪一主营业务主营业务转换器B站已经提交IPO申请马化腾等互联网大佬集体表态期待回归A股一B站提交IPO申请融资4亿美元,2017年收入超24亿元事件近日,哔哩哔哩向美国证券交易委员会提交了IPO申请计划融资4亿美元。截至2017年第四季度,哔哩哔哩的月度活跃用户为7小米众筹无线插座,功能太全面,网友又一款神器7月13日,小米众筹平台推出了无线充电插座,该插座具有无线充电器和多端口插座的功能。众筹价格为109元(零售价为129元),将于7月15日开始,众筹将于周日上午1000开始。小米立郭明錤Meta将成为全球最大VR装置供应商天风国际分析师郭明錤在新报告指出,Meta(Facebook)将成为全球最大VR装置供应商,预计2021VR装置出货量可达900万部。报告中提到,无线化为改善元宇宙使用者体验与推升白色面板的坚守者!妹族果然与众不同,这不就是小姐姐专属?最近魅族真的是被网红小姐姐给玩坏了,竟然带头玩起了妹族的谐音梗,搞得笔者我现在读起meizu两个字的时候就情不自禁想成妹族。不过话说回来,魅族确实是挺妹族的,因为妹子们一般手都比较第一次使用降噪耳机是怎样的体验?知乎大佬在线用TA解答最近看到网上有朋友对OPPOEncoW51挺感兴趣的,并且他们还向网友询问这款耳机的实际使用体验如何?对于这个问题我本是不想发表意见的,毕竟没有深度上手体验这款产品。不过最近看到知阿里3年前注册躺平商标!网络热词受欢迎?今天你躺平了吗?躺平一词近日很火,意思是指现在的年轻人为生活所累,开始佛系,低消费低欲望,躺平的生活。躺平是一个新概念,但阿里巴巴集团早在3年前就申请了躺平商标。根据查询,2018华为多次申请历史人物为商标!这次是鲁班商标近两天,华为公司申请注册鲁班商标的消息登上微博热搜榜。小知查询得知,该商标的国际分类为科学仪器,商标状态为申请中。对于华为申请历史人物姓名为商标这件事,不少网友表示疑问,历史人物的好戏将至,iOS14iPadOS等年度重磅更新,33年来首次线上33年来首次,Apple有史以来首次将开发者大会搬至线上举行。与以往线下面对面举办发布会不同,这苹果不再在旧金山圣何塞中心(McEneryConvention)举行发布会举办线下发期待已久的AppleWatchECG就要来了吗?6月25日,国家药品监督管理局网站公布了6月25日医疗器械批准证明文件(进口)待领取信息发布。注册证编号为国械注进20212210223,名称为移动心电图房颤提示软件,申请人为美国
华为nove7se新版即将上市华为nova7SE新版本要上市了,屏幕镜头以及它的机身数值都没变,唯一有区别的就是处理器从麒麟820换成主频2。4GHz的天玑800U。变化是4个高频A76换成2个高频A76,6核还在为电脑系统卡慢而烦恼吗?新版win10重点优化这个问题Hello大家好,我是兼容机之家的小牛!自从Windows102015年正式发布以来,已经过去快五年的时间,在这五年的时间里,Windows10从一个BUG超多的难用的系统,已经转好多人都踩过的坑,同一道题,电脑手机却算出两种不同的结果!Hello大家好,我是兼容机之家的小牛!从前有个老板,经常用手机里面的计算器算账,注意不是电脑Windows系统里面的计算器。但是总是算不对,实际上是盈利的,可是他总是算出了亏本。手机成本统计报告,揭秘哪个品牌才是溢价之王,结果令人没有想到Hello大家好,我是兼容机之家的小牛!昨天小米发布了RedmiK30Pro,明天华为要发布旗舰级产品P40系列,今天夹在中间很是为难。不知道大家发现了没有,因为不可抗力的原因,M手机行业高利润被打破,苹果影响最大,只因这张小小的超级SIM卡Hello大家好,我是兼容机之家的小牛!近些年来,智能手机的发展异常迅猛。从三星HTC安卓双星争霸,到后来的中华酷联低价时代,再到如今国产手机百花齐放的局面。国内市场已经摆脱了被三电脑进不了系统,送来检查只是小问题,但主机配置却引起我的注意Hello大家好,我是兼容机之家的小牛!今天有个本地网友拿台电脑主机上门,说自己系统进不去,让我看看是不是电脑有问题。其实就是一个简单的系统问题,三下五除二就搞定了。电脑进不了系统P40发布后,让咱看看手机疯狂涨价的背后,到底是谁在控制着涨价Hello大家好,我是兼容机之家的小牛!昨晚华为P40发布,宣布着年初各家的旗舰手机基本上都发布完毕了,接下来的新机莫过于4月份的iPhone9最值得期待了。其中,华为P40系列国苹果又一款新手机视频曝光,全新四摄加金属中框,价格或有惊喜Hello大家好,我是兼容机之家的小牛!前两天,华为发布全新的P40系列手机,从低到高一共三款手机,分别是P40P40ProP40Pro。这三款手机的最大不同的地方就在后置摄像头的昨日华为连发三款旗舰手机,麒麟990性能堪比P40,价格仅2999起Hello大家好,我是兼容机之家的小牛!继华为旗舰手机P40系列发布之后,华为上半年的第二部旗舰手机荣耀30终于来了。不同于华为P40系列那高昂的价格,同样搭载麒麟9905G芯片的资本实验室与远望智库联合发布2021全球区块链应用市场报告从以比特币为代表的区块链1。0时代到以智能合约为媒介,以金融应用为核心的区块链2。0时代再到区块链应用于政务服务和更广泛的各行业,并开始推动信息互联网向价值互联网靠拢,短短10余年开挂的特斯拉季度交付量创纪录,市值位居全球第七据特斯拉最新公布的2021年第三季度汽车生产和交付数据,公司在三季度的交付量超过240,000辆,创下新的季度交付记录,前三季度总交付量已超过627,000辆。从季度分布来看,特斯