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

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 就可以成功访问了这种方式只能本地测试环境运行,对正式环境无效(需要配置环境生效)

电视频道CanalBrasil视觉形象升级CanalBrasil开播于1998年,是巴西的一家付费电视频道,专注于播放庆祝和代表巴西文化的原创电视剧和电影。作为巴西媒体巨头Globosat的一部分,该频道的创立源于该国19精酿啤酒厂BluePointBrewingCompany视觉形象升级BluePointBrewingCompany成立于1998年,是一家位于美国纽约州长岛南岸村庄的精酿啤酒厂,2014年被百威英博收购,从而使其扩张到一家占地5。4万平方英尺的新啤利洁时公司Reckitt视觉形象升级利洁时(Reckitt)成立于1999年,原名ReckittBenckiser,2014年更名为RB,由英国公司ReckittColman和荷兰公司Benckiser合并而成,历史音乐技术公司Pirate视觉形象升级Pirate成立于2015年,是一家创办于英国布里斯托尔的音乐技术公司,运营着全自动化的24小时自助音乐工作室,面向音乐家制作人播客和舞蹈演员,以最实惠的价格提供设备齐全的专业空间施华洛世奇Swarovski视觉形象升级施华洛世奇(Swarovski)于1895年在奥地利成立,是全球首屈一指的光学器材及精确切割仿水晶制造商,为时尚服饰首饰灯饰建筑及室内设计提供仿水晶元素。施华洛世奇有两个主要业务,保安服务公司Securitas视觉形象升级Securitas成立于1934年,是一家全球性的保安服务和安全公司,总部位于瑞典斯德哥尔摩,在全球有37万员工分布在58个不同的国家及地区,在北美欧洲拉丁美洲非洲中东以及亚洲都有鱼子酱生产商CaviarRiofro视觉形象升级CaviarRiofro成立于1963年,是欧洲顶级鱼子酱生产商之一,被认为与源自俄罗斯或伊朗的最佳的鱼子酱不相上下。该公司是欧洲首家获得鱼子酱有机认证的养殖者,它们的鲟鱼在西班牙时装品牌MarioHernndez视觉形象升级MarioHernndez成立于1978年,是哥伦比亚的一家时装品牌,主要生产奢侈皮革制品,总部设在波哥大。该公司以其创始人的名字命名,早些时候,他们推出了一个由波哥大Bastar商业地产公司Newmark视觉形象升级Newmark成立于1929年,是一家商业房地产公司,在世界各地设有500个办事处,并在美国欧洲拉丁美洲亚太地区中东和非洲为超过4亿平方英尺的区域提供物业和设施管理服务,以及其他高铃木死也不向中国妥协!极狐为国人造长续航电动车,3。5S破百铃木修我就是死,也不会向中国市场妥协!新能源车该有的样子这句霸气的豪言出自铃木品牌CEO铃木修先生,本在中国汽车市场混得风生水起的铃木品牌,逐渐发觉自己造小车的理念和中国人喜欢大车朋友劝买理想ONE,我更看好极狐阿尔法T,新能源汽车到底怎么选?国产电动车发展日新月异,国内新势力造车如雨后春笋一般,新能源车的种类也往往是让人看得眼花缭乱。我是近期打算购入一台新能源汽车,就图它的省钱舒适高性能,最关键的是免去了摇号的烦恼。身
名门修谱互联网家谱发起者,领导修谱文化传统纸质家谱家谱作为见证一个家族发展的历史书,它以图文并茂的形式记载了整个家族源承历史和血脉印记,对家族文化传承子女培育社会德育体系完善等都有其不可取代的功能与价值。但是传统的修谱名门修谱嗣子祧子都见过,清代家谱上面的蜈蚣子是什么?家谱中的嗣子祧子凡是有参加过修谱,或者是修过谱的宗亲。在谱书上一定见过嗣子祧子继子养子这些称呼。这些不同的称呼,对应家族中辈分之间不同的关系,一旦写错或者用错,总会闹出不少的笑话。名门修谱以前家谱秘不示人,如今想法变了传统家谱提到修家谱修族谱,近几年也是一个比较火热的话题。主要原因还是因为家谱是一个家族的生命史。它不仅记录着该家族的来源迁徙的轨迹,还包罗了该家族生息繁衍婚姻文化族规家约等历史文化名门修谱家谱上面继子和寄子,有啥区别?家谱中的嗣子祧子家谱作为一个家族文化的传承,其中很多称呼,都是有讲究的。例如,都是给别人做儿子,却嗣子祧子继子养子等称呼。看过老谱的人可能会发现,在很多家谱中,有继子,也有寄子。这名门修谱姓氏文化和家谱文化联手,商机来了寻根圣地姓氏文化,是指与姓氏有关的物质文化和非物质文化,其内容包括姓氏起源姓氏流变家族播迁名人事迹与遗迹家谱宗祠世系家训郡望堂号堂联字辈等等,以及由此形成的尊祖敬宗报本反始寻根问祖名门修谱修家谱也有口碑差的时候修谱修家谱明明是件纪念先祖,缅怀祖宗的家族大事,为什么在很多农村,却被看成是一种不吉利的事?这里面最主要的原因,还是在于有些人对于修家谱的认知不深,所以被一些打着修家谱口号的族人,名门修谱从2万到200万?修谱到底该要多少钱?传统纸谱你们的家族里有祖传下来的家谱吗?这种简单的问题,近几年随着修家谱慢慢的兴起,在很多的宗亲家族之间,也开始流传。家谱作为一个家族历史的载体,虽然意义重大,但是在现实中却越来越名门修谱修谱有哪些痛点?如何修好一本家谱?传统家谱家谱作为中国传统文化的一种传承,其非常重视血缘亲属的关系。从古至今,从皇室到普通家庭,几乎每个家族都有修家谱的习惯,这也是儒家思想中家国天下的具体表现。作为记载父系家族人物去饥饿营销的路上,小米MIX4的曝光再次勾起网民惊讶的目光?在手机圈里面说起性价比无人不服小米!这也是为什么米粉们要送一个雷布斯的雅号给小米创始人雷军的初衷之一。正是凭借这一优势,小米果真盘活了整个国产手机市场,开创了一个全新的消费习惯。正听说只有10的人能瓜分余额宝100亿体验金?女朋友生日可以不知道,但余额宝的生日要是不知道,你可能错过一个亿!原来为庆祝6周年生日,余额宝特推出了一个惊喜活动堆堆乐,体验金再次火爆上线,上支付宝搜666就参与,体验金金额高达360疑似进军影视业巴迪龙动画能否推动国产动画行业发展?说到国内动画产业,自从1922年摄制的第一部动画舒振东华文打字机揭开了中国动画史的一页以后,国内动画就出现了井喷的现象,发展至今,国内动画作品已经数不胜数。不过数量虽多,但真正有影