028-86922220

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

axios异步请求的流程与原理是什么

这篇文章主要介绍了axios异步请求的流程与原理是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇axios异步请求的流程与原理是什么文章都会有所收获,下面我们一起来看看吧。

10年积累的网站设计制作、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有鸡泽免费网站建设让你可以放心的选择与我们合作。

一、什么是axios?

axios是一个基于Promise的方法,可以发送get、post等请求,并且前后端都可以使用。

二、axios的内部原理

三、axios的使用

1、通过使用axios的方法

常用方法:get, post, request

axios.get

axios.get('/user', {
    params: {
      ID: 12345
    }
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  })
  .then(function () {
    // always executed
  });

axios.post

axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });

axios.request

可以传入很多请求配置

axios.request({
	url: '/user',
	method: 'get', // 默认
	baseURL: '/api',
	//...})

2、通过传入配置方法

axios({
  method: 'get',
  url: 'http://bit.ly/2mTM3nY',
  responseType: 'stream'})
  .then(function (response) {
    response.data.pipe(fs.createWriteStream('ada_lovelace.jpg'))
  });

四、响应模块

响应模块有以下几个参数

{
	data: {},
	status: 200,
	statusText: 'ok',
	header: {},
	config: {},
	request: {}}

五、配置

1.全局axios的配置

axios.defaults.baseURL = 'https://api.example.com';
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

2.实例的配置

const instance = axios.create({
  baseURL: 'https://api.example.com'});
 instance.defaults.headers.common['Authorization'] = AUTH_TOKEN;

3.配置的优先级

const instance = axios.create();instance.defaults.timeout = 2500;instance.get('/longRequest', {
  timeout: 5000});

最终timeout设置的时间是5000,所以这里面的优先级,请求里面的配置>实例化配置>axios的默认配置

六、Interceptors 拦截器

可以在请求数据之前或者接收数据之前处理数据

axios.interceptors.request.use(function (config) {
    return config;
  }, function (error) {
    return Promise.reject(error);
  });
  axios.interceptors.response.use(function (response) {
    return response;
  }, function (error) {
    return Promise.reject(error);
  });

七、并发请求处理

// 把axios请求放进函数里function getUserAccount() {
  return axios.get('/user/12345');}
 function getUserPermissions() {
  return axios.get('/user/12345/permissions');}//函数执行放到Promise里面排队,挨个响应。Promise.all([getUserAccount(), getUserPermissions()])
  .then(function (results) {
    const acct = results[0];
    const perm = results[1];
  });

关于“axios异步请求的流程与原理是什么”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“axios异步请求的流程与原理是什么”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注创新互联行业资讯频道。


网站栏目:axios异步请求的流程与原理是什么
本文地址:http://www.tsicrk.com/article/pdgsci.html

其他资讯

让你的专属顾问为你服务

0.7785s