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. SELinux 基本原理

    首发公号:Rand_cs SELinux 基本原理 本文讲述 SELinux 保护安全的基本原理 安全检查顺序 不废话,直接先来看张图 当我们执行系统调用的时候,会首先对某些错误情况进行检查,如果失败 ...

  2. Linux下,安装单机版Flink

    安装前准备 jdk环境 开始安装 下载安装包 地址1:https://archive.apache.org/dist/flink/flink-1.18.0/flink-1.18.0-bin-scala ...

  3. C#.NET 使用Task.Run和Task.Delay 延时执行任务(代码)

    C#.NET 使用Task.Run和Task.Delay 延时执行任务(代码) 环境: .NET 4.5.2 .NET WEB MVC + WEB API. 示例代码: using CommonUti ...

  4. (五)基于selenium实现12306模拟登陆

    这里介绍一款强大验证码识别平台:超级鹰 - 超级鹰:http://www.chaojiying.com/about.html - 注册:普通用户 - 登录:普通用户 - 题分查询:充值 - 创建一个软 ...

  5. 使用Blazor WebAssembly整合PocketBase的基础项目模板

    使用Blazor WebAssembly整合PocketBase的基础项目模板 在这篇博客文章中,我们将探讨如何创建一个集成PocketBase的基础Blazor WebAssembly项目.我们将涵 ...

  6. 三月二十六日 安卓打卡app开发日志

    今天上午 将打卡逻辑代码优化了一下 之后每天就只可以打卡一次了 public static String daka(String time_s, String time_e, String text, ...

  7. java.sql.SQLException: Connection is read-only. Queries leading to data modification are not

    java.sql.SQLException: Connection is read-only. Queries leading to data modification are not 产生的原因:事 ...

  8. Java代码忽略https证书:解决No subject alternative names present问题 HttpURLConnection https请求

    Java代码忽略https证书:解决No subject alternative names present问题 import org.slf4j.Logger; import org.slf4j.L ...

  9. C++类与对象详解

    什么是类和对象 类和对象的概念 类是对象的抽象,对象是对客观事物的抽象. 用通俗的话来说: 类是类别的意思,是数据类型. 对象是类别下的具体事物. 也就是说: 类是数据类型,对象是变量. 比如: 水果 ...

  10. 基于GNU ARM Eclipse的集成环境搭建

    背景 老师送给我的STM32的板子不小心给我坏了,现在疫情还没过去,为了复习巩固stm32有关的移植,只能先玩玩仿真了. 我们在这一讲主要以搭建环境为主. host平台 :Ubuntu 16.04 G ...