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的更多相关文章

  1. 【vue】MongoDB+Nodejs+express+Vue后台管理项目Demo

    ¶项目分析 一个完整的网站服务架构,包括:   1.web frame ---这里应用express框架   2.web server ---这里应用nodejs   3.Database ---这里 ...

  2. 【vue】生成接口模拟数据

    目录 方案一:自定义模拟数据 Step1 创建json文件 Step2 在 vue.config.js 中配置 Step3 在组件中使用 (方式一) Step3 封装api (方式二) Step4 在 ...

  3. 【Vue】Vue中的父子组件通讯以及使用sync同步父子组件数据

    前言: 之前写过一篇文章<在不同场景下Vue组件间的数据交流>,但现在来看,其中关于“父子组件通信”的介绍仍有诸多缺漏或者不当之处, 正好这几天学习了关于用sync修饰符做父子组件数据双向 ...

  4. 【vue】移动端demo资料

    http://imzjh.com/inew/#/(移动端demo) https://github.com/liangxiaojuan/eleme(饿了么git地址) https://github.co ...

  5. 【vue】本地开发mock数据支持

    项目离不开数据渲染的支持,为本地开发配置 数据  支持. (一)方式一:安装JSON Server搭建mock数据的服务器 json Server 是一个创建 伪RESTful服务器的工具. 配置流程 ...

  6. 【vue】npm run mock & npm run dev 无法同时运行的解决

    [关于系统,没注明的都是windows系统,若以后用的是mac系统则会另外备注] 当项目数据是通过mock搭建而成(参照:[vue]本地开发mock数据支持)时,运行mock服务器和项目的命令 就参照 ...

  7. 【VUE】自定义组件

    [VUE]自定义组件 转载: ============================================ ======================================== ...

  8. 【VUE】使用问题记录

    [VUE]使用问题记录 ===================================================================== 1.Vue.nextTick 修改数 ...

  9. 【VUE】数组

    [VUE]常用函数 转载:https://www.cnblogs.com/yangchongxing/p/10637087.html 目录 ============================== ...

  10. 【VUE】4.配置axios发起请求

    1.配置axios 1. 前端请求后端接口进行数据交互的时候,需要配置axios 2. 导入axios包, main.js import axios from 'axios' 3. 挂载到原型配置上, ...

随机推荐

  1. WEB攻防-代码特性

    WEB攻防-代码特性 目录 WEB攻防-代码特性 ASP 如何判断网站搭建是否是asp ASP常见的搭配组合 ASP语言的漏洞点(从哪一方面入手) ASP-数据库-MDB下载 ASP-数据库-ASP后 ...

  2. Asp .Net Core 系列:详解鉴权(身份验证)以及实现 Cookie、JWT、自定义三种鉴权 (含源码解析)

    什么是鉴权(身份验证)? https://learn.microsoft.com/zh-cn/aspnet/core/security/authentication/?view=aspnetcore- ...

  3. C#.NET 国密 SM2 公钥证书从文本转换

    先前的 Util 是直接从文件中转换的 https://www.cnblogs.com/runliuv/p/15079404.html public static AsymmetricKeyParam ...

  4. 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. ...

  5. mysql时间字段新增和修改默认时间,删除字段

    mysql时间字段新增和修改默认时间,删除字段##新增字段ALTER TABLE tbl_test ADD COLUMN `create_time` DATETIME NULL DEFAULT CUR ...

  6. linux 下新建显示器分辨率

    1. 输入cvt 1920 1080 (假设需要添加的分辨率为1920x1080), 获取Mode Line # 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.1 ...

  7. 单芯片国产ARM+FPGA,复旦微FMQL20SM工业核心板正式发布!

  8. yb课堂 实战之路由拦截和订单模块 《四十二》

    前置守护 路由拦截功能开发 文档:https://router.vuejs.org/zh/guide/advanced/navigation-guards.html router里面配置需要登陆的路由 ...

  9. yb课堂之用户下单模块开发 《十四》

    开发用户下单购买视频接口 VideoOrder模块下单接口开发 VideoOrderController.java package net.ybclass.online_ybclass.control ...

  10. 【VMware vCenter】VMware vCenter Server(VCSA) 5.5 版本证书过期问题处理过程。

    之前帮客户处理了一个因证书过期导致 vCenter Server 无法登录的问题,在此记录一下,因为时间过去有点久了,可能会有些地方描述的不是很清楚,所以就当作参考就行.客户环境是一个非常老的 vCe ...