【Vue】Re22 Axios
Axios【AJAX I\O System】
创建案例项目并且安装Axios
npm install axios --save
接口测试网址:
http://httpbin.org/
案例提供的数据地址:
http://123.207.32.32:8000/home/multidata
在Main.js中导入Axios
import axios from 'axios';
一、请求发送
基本语法:
1、请求地址
2、请求方式
3、请求参数
4、链式then调用响应
axios({
url : 'http://123.207.32.32:8000/home/multidata',
method : 'post', /* get */
params : {
pageIndex : 1,
type : 'pop',
userId : '... ...'
},
}).then(function (result) {
console.log(result);
});
其他请求方式:
const config = {
url : 'http://123.207.32.32:8000/home/multidata',
method : 'post', /* get */
params : {
pageIndex : 1,
type : 'pop',
userId : '... ...'
},
}
axios(config);
axios.request(config);
axios.get(config.url,config);
axios.delete(config.url, config);
axios.head(config.url, config);
axios.post(config.url, config.params, config);
axios.put(config.url, config.params, config);
axios.patch(config.url, config.params, config);
同时发送请求
axios.all([
axios({
url : 'http://123.207.32.32:8000/home/multidata'
}),
axios({
url : 'http://123.207.32.32:8000/home/data',
params : {
type : 'sell',
page : 5
}
})
]).then(resultList => {
console.log(resultList);
});
响应结果分开传递
axios.all([
axios({
url : 'http://123.207.32.32:8000/home/multidata'
}),
axios({
url : 'http://123.207.32.32:8000/home/data',
params : {
type : 'sell',
page : 5
}
})
]).then(axios.spread((r1, r2) => {
console.log(r1);
console.log(r2);
}));
分开传递的写法就相当于解构函数的写法,直接声明了属性变量直接调用
二、配置详细
全局配置:
也可以在局部请求时更改配置
axios.defaults.baseURL = 'http://123.207.32.32:8000'; // 根URL
axios.defaults.timeout = 5000; /* 毫秒 */ //超时时间上限
axios.defaults.transformRequest = function (data) { // 请求前数据处理 };
axios.defaults.transformResponse = function (data) { // 请求后数据处理 };
axios.defaults.headers = { // 请求头
'x-Requested-With' : 'XMLHttpRequest'
};
axios.defaults.params = { // 请求参数
id : 12
};
axios.defaults.paramsSerializer = function (params) { // 查询对象序列化
// todo ... ...
}
axios.defaults.data = { /* 响应请求体 */ }
axios.defaults.withCredentials = false; // 跨域是否携带Token
axios.defaults.adapter = function (resolve, reject, config) { // 自定义请求处理
// todo ... ...
}
axios.defaults.auth = { // 身份信息
username : '',
password : ''
}
axios.defaults.responseType = 'json'; // 响应格式
【Vue】Re22 Axios的更多相关文章
- 【vue】MongoDB+Nodejs+express+Vue后台管理项目Demo
¶项目分析 一个完整的网站服务架构,包括: 1.web frame ---这里应用express框架 2.web server ---这里应用nodejs 3.Database ---这里 ...
- 【vue】生成接口模拟数据
目录 方案一:自定义模拟数据 Step1 创建json文件 Step2 在 vue.config.js 中配置 Step3 在组件中使用 (方式一) Step3 封装api (方式二) Step4 在 ...
- 【Vue】Vue中的父子组件通讯以及使用sync同步父子组件数据
前言: 之前写过一篇文章<在不同场景下Vue组件间的数据交流>,但现在来看,其中关于“父子组件通信”的介绍仍有诸多缺漏或者不当之处, 正好这几天学习了关于用sync修饰符做父子组件数据双向 ...
- 【vue】移动端demo资料
http://imzjh.com/inew/#/(移动端demo) https://github.com/liangxiaojuan/eleme(饿了么git地址) https://github.co ...
- 【vue】本地开发mock数据支持
项目离不开数据渲染的支持,为本地开发配置 数据 支持. (一)方式一:安装JSON Server搭建mock数据的服务器 json Server 是一个创建 伪RESTful服务器的工具. 配置流程 ...
- 【vue】npm run mock & npm run dev 无法同时运行的解决
[关于系统,没注明的都是windows系统,若以后用的是mac系统则会另外备注] 当项目数据是通过mock搭建而成(参照:[vue]本地开发mock数据支持)时,运行mock服务器和项目的命令 就参照 ...
- 【VUE】自定义组件
[VUE]自定义组件 转载: ============================================ ======================================== ...
- 【VUE】使用问题记录
[VUE]使用问题记录 ===================================================================== 1.Vue.nextTick 修改数 ...
- 【VUE】数组
[VUE]常用函数 转载:https://www.cnblogs.com/yangchongxing/p/10637087.html 目录 ============================== ...
- 【VUE】4.配置axios发起请求
1.配置axios 1. 前端请求后端接口进行数据交互的时候,需要配置axios 2. 导入axios包, main.js import axios from 'axios' 3. 挂载到原型配置上, ...
随机推荐
- WEB攻防-代码特性
WEB攻防-代码特性 目录 WEB攻防-代码特性 ASP 如何判断网站搭建是否是asp ASP常见的搭配组合 ASP语言的漏洞点(从哪一方面入手) ASP-数据库-MDB下载 ASP-数据库-ASP后 ...
- Asp .Net Core 系列:详解鉴权(身份验证)以及实现 Cookie、JWT、自定义三种鉴权 (含源码解析)
什么是鉴权(身份验证)? https://learn.microsoft.com/zh-cn/aspnet/core/security/authentication/?view=aspnetcore- ...
- C#.NET 国密 SM2 公钥证书从文本转换
先前的 Util 是直接从文件中转换的 https://www.cnblogs.com/runliuv/p/15079404.html public static AsymmetricKeyParam ...
- Invalid revision: 3.18.1-g262b901-dirty CMake Error: CMake was unable to find a build program corresponding to "Ninja".
一次在GitHub上找到的项目,本想编译运行下,但报如下的问题 错误一 Invalid revision: 3.18.1-g262b901-dirty 解决办法: 这是因为版本不对应,可在local. ...
- mysql时间字段新增和修改默认时间,删除字段
mysql时间字段新增和修改默认时间,删除字段##新增字段ALTER TABLE tbl_test ADD COLUMN `create_time` DATETIME NULL DEFAULT CUR ...
- linux 下新建显示器分辨率
1. 输入cvt 1920 1080 (假设需要添加的分辨率为1920x1080), 获取Mode Line # 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.1 ...
- 单芯片国产ARM+FPGA,复旦微FMQL20SM工业核心板正式发布!
- yb课堂 实战之路由拦截和订单模块 《四十二》
前置守护 路由拦截功能开发 文档:https://router.vuejs.org/zh/guide/advanced/navigation-guards.html router里面配置需要登陆的路由 ...
- yb课堂之用户下单模块开发 《十四》
开发用户下单购买视频接口 VideoOrder模块下单接口开发 VideoOrderController.java package net.ybclass.online_ybclass.control ...
- 【VMware vCenter】VMware vCenter Server(VCSA) 5.5 版本证书过期问题处理过程。
之前帮客户处理了一个因证书过期导致 vCenter Server 无法登录的问题,在此记录一下,因为时间过去有点久了,可能会有些地方描述的不是很清楚,所以就当作参考就行.客户环境是一个非常老的 vCe ...