当前位置:
首页 > temp > JavaScript教程 >
-
第五十五篇:Axios的封装
好家伙,
上图
1.为什么需要封装axios?
当我们改变项目的使用环境时候,url也会随之改变,那么我们就需要改很多axios请求中的url配置
现在我们将axios封装,在项目使用环境改变时我们只用改变axios封装方法中的baseurl一项就行了,请求的接口地址不变
2.Axios的封装方式
在src的文件中新建一个request.js的文件
import axios from "axios"; //创建一个axios的对象 const instance = axios.create({ baseURL:"https://xxx.xxx.xxx", // baseURL会在发送请求的时候拼接在url参数前面 timeout: 5000 }); instance.interceptors.request.use( function(config){ return config; }, function(err) { return Promise.reject(err); } }; export function get(url, params) return instance.get(url, { params }); export function post(url, data) { return instance.post(url, data); }
回到food.vue文件加上方法引入
import { get } from "../src/request";
方法配置:
methods : { getData(){ axios.get("/user/food",{ params:{ uid:1, }, headers:{} }) .then(res =>console.log(res)); //成功后直接出结果 }, }
封装完成
3.axios全局拦截
请求拦截
//请求拦截 //所有的网络请求都会先走这个方法 instance.interceptors.request.use{ function(config){ console.group("全局请求拦截"); console.Log(config); console.groupEnd(); return config; }, function(err) { return Promise.reject(err); };
响应拦截
// 响应拦截所有的网络请求退回数据之后都会先执行此方法 //此处可以根据服务器的放回状态码做相应的数据 instance.interceptors.response.use{ function(response) { console.group("全局响应拦截"); console.log(response); console.groupEnd(); return response; function(err){ return Promise.reject(err); } };
(其具体作用暂时未知,笔记先记上)
出处:https://www.cnblogs.com/FatTiger4399/p/15991908.html
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程
检测数据类型的四种方法
js中数组的方法,32种方法
前端操作方法
数据类型
window.localStorage.setItem 和 localStorage.setIte
如何完美解决前端数字计算精度丢失与数