[Axios] axios的请求合并以及参数配置
axios的请求合并以及参数配置
参考简书1
参考简书2
并发请求 – 处理并发请求的助手函数
- axios.all(iterable) – iterable是一个可以迭代的参数如数组等
let sendAry = [axios.get('get获取的地址1'),axios.get('get获取的地址2'),axios.post('post获取的地址') ]; //=>三个请求都完成才做一些事情(可以基于ALL实现) axios.all(sendAry).then(result => {console.log(result);//=>输出是一个数组,分别存储每一个请求的结果let [resA, resB, resC] = result; });
- axios.spread(callback) – callback要等到所有请求都完成才会执行
module.exports = function spread(callback) {return function wrap(arr) {return callback.apply(null, arr);}; }; let wrap = axios.spread(() => {}); axios.all(sendAry).then(axios.spread((resA, resB, resC) => {//=>RES-A/-B/-C分别代表三次请求的结果 //=>原理是JS中的柯理化函数 }));
配置
config
来发送请求axios(config)
//发送一个`POST`请求 axios({method:"POST",url:'post请求地址',data:{firstName:"Fred",lastName:"Flintstone"} });
axios(url[,config])
//发送一个`GET`请求(默认的请求方式) axios('get请求地址');
请求方式的别名
axios.request(config);axios.get(url[,config]);axios.delete(url[,config]);axios.head(url[,config]);axios.post(url[,data[,config]]);axios.put(url[,data[,config]])axios.patch(url[,data[,config]])
初始化常用配置
- baseURL – 默认地址
axios.defaults.baseURL = '地址';
validateStatus – 状态码,回复状态
resolve
或者reject promise
- 默认状态码
validateStatus:function(status){return status >= 200 && status <300;//default }
- 自定义成功失败规则 –
resolve/reject
axios.defaults.validateStatus = function validateStatus(status) {//=>自定义成功失败规则:RESOLVE / REJECT(默认规则:状态码以2开头算作成功)return /^(2|3)\d{2}$/.test(status); };
timeout – 延迟时间
axios.defaults.timeout = 3000;
- headers – 设置请求头信息
headers: {'X-Requested-With':'XMLHttpRequest'}
- params – GET传参
axios.defaults.params={};//=>GET传参
- data – POST传参
axios.defaults.data={};//=>POST传参
- 支持格式 – 默认
RAW
– 常用URL-ENCODEED
//设置在POST请求中基于请求主体向服务器发送内容的格式,默认是RAW,项目中常用的是URL-ENCODEED格式 axios.defaults.headers['Content-Type'] = 'appliction/x-www-form-urlencoded';
- common – 当实例创建时候修改配置
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
- 设置响应拦截器 – 分别在响应成功和失败的时候做一些拦截处理(在执行成功后设定的方法之前,先会执行拦截器中的方法)
axios.interceptors.response.use(function success(result) {return result.data; }, function error() {})
- transformRequest – 允许在请求数据发送到服务器之前对其进行更改
axios.defaults.transformRequest = data => {//=>DATA:就是请求主体中需要传递给服务器的内容(对象)let str = ``;for (let attr in data) {if (data.hasOwnProperty(attr)) {str += `${attr}=${data[attr]}&`;}}return str.substring(0, str.length - 1); };
[Axios] axios的请求合并以及参数配置相关推荐
- axios 登录后设置header,vue+axios 全局添加请求头和参数操作
vue+axios 全局添加请求头和参数操作 走登录的接口都会返回一个 token 值, 然后存起来方便之后调接口的时候给后台传过去, 传给后台的方式有两种:(具体使用哪种需要和后台商量) 1, 放在 ...
- axios 最全 请求拦截器 响应拦截器 配置公共请求头 超时时间 以及get delete post put 四种请求传参方式
axios 拦截器 请求拦截器 请求拦截器的作用是在请求发送前进行一些操作 例如在每个请求体里加上token,统一做了处理如果以后要改也非常容易 响应拦截器 响应拦截器的作用是在接收到响应后进行一些操 ...
- 【跨域问题】Vue简单封装axios—解决post请求后端接收不到参数问题
原因分析: 1. 传参数据没有序列化? 解决办法: [推荐] [推荐阅读] vue+axios+qs序列化 "三步解析"[含demo实例]- 代码篇 2. 服务端接受数据格式参数配 ...
- axios使用post请求的时候后台接收不到参数
2019独角兽企业重金招聘Python工程师标准>>> import axios from "axios"; import qs from "qs&qu ...
- axios (get post请求、头部参数添加)傻瓜式入门axios
傻瓜式入门,简单粗暴说用法 通过cdn引入js文件 <script src="https://unpkg.com/axios/dist/axios.min.js">&l ...
- axios使用post请求服务端不能获取参数的解决方法
项目中使用到axios作为ajax请求插件,用到post请求是常见的,诸如以下场景的一个普通的post请求: export function listManage(params) { retu ...
- vuecli+axios的post请求传递参数异常
vuecli+axios的post请求传递参数异常 参考文章: (1)vuecli+axios的post请求传递参数异常 (2)https://www.cnblogs.com/yanqiong/p/1 ...
- Vue-cli3.x中使用Axios发送跨域请求的配置方法
Vue-cli3.x中使用Axios发送跨域请求的配置方法 安装axios npm i axios -s main.js中引入 import axios from 'axios'//将axios挂载在 ...
- axios 之 post请求参数格式不正确得问题
问题是这样得,今天用axios 发起要给post请求,参照官方写得 请求过后发现后台拿不到数据,找了很久发现了问题: 就是axios发起post请求得时候发送过去的数据成了键,而值是空 就是 ...
最新文章
- python中ndarray和matrix
- 揭秘!如何用Flutter设计一个100%准确的埋点框架?
- 看完后,别再说自己不懂用户画像了
- 【入门5】字符串(今天刷洛谷了嘛)
- python调用opencv的速度_OpenCV-Python系列之OpenCV性能衡量与优化方法
- Android View的滚动原理简单解析
- 修改表结构的执行效率
- 为什么新建文本文档没有.txt后缀
- 携程去哪儿合并可行性研究报告
- 【MySQL】MySQL有几种锁
- cocos2d实现画笔功能及常用的绘制函数
- [11] 微信公众帐号开发教程第11篇-符号表情的发送(上)
- 手机端酒店机票预订页面HTMLcss3+html5模板
- 有一台服务器可以做哪些很酷的事情·2
- NVIDIA Jetson TK1 rosrun rviz segmentation fault的解决方法
- RA病人关节残障与软骨破坏而非骨破坏相关
- [Swift]LeetCode855. 考场就座 | Exam Room
- Hadoop Shell 命令 与 WordCount
- 【半导体先进工艺制程技术系列】FinFET和UTB-SOI简介
- Arcmap转nc文件为TIFF格式(以逐月降水量数据集转年均数据为例)