axios的特点与使用_解决处理axios兼容性问题

时间: 2018-04-10阅读: 8309标签: axios

一、简介

“Promise based HTTP client for the browser and node.js” ,译:基于 Promise 的 HTTP 请求客户端,可同时在浏览器和 node.js 中使用。


二、特点:

1、在浏览器中发送 XMLHttpRequests 请求;
2、在 node.js 中发送 http请求;
3、支持 Promise API;
4、拦截请求和响应;
5、转换请求和响应数据
6、自动转换 JSON 数据
7、客户端支持保护安全免受 XSRF 攻击;


三、安装

//命令行安装
npm install --save axios
//在所需要的组件中引入
import axios from 'axios';

当然也可以用script引入

<script src="/axios.min.js"></script>


四、应用

1、发送一个get请求

axios.get('/welfare', {
  params: {
  giftPackId: 1
  }
 })
 .then(function(res) {
  console.log(res);
 })
 .catch(function (res) {
  console.log(res);
 });

2、发送一个post请求

axios.post('/welfare', {
     giftPackId: 1
  })
  .then(function (res) {
    console.log(res);
  })
  .catch(function (res) {
    console.log(res);
  });

3、发送多个并发请求

function getUserAccount() {
  return axios.get('/welfare');
}
 
function getUserPermissions() {
  return axios.get('/getWelfare');
}
 
axios.all([getUserAccount(), getUserPermissions()])
  .then(axios.spread(function (acct, perms) {
    // ok
  }));

4、除此之外axios还提供还有如下几种请求方式:

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]])


五、兼容性处理

项目中发现,在安卓4.3及以下的手机不支持axios的使用,主要就是无法使用promise。加上以下polyfill就可以了。

项目中安装es6-promise

cnpm install es6-promise --save-dev

在axios.min.js开头加上

require('es6-promise').polyfill();
站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

2.广告联盟: 整理了目前主流的广告联盟平台,如果你有流量,可以作为参考选择适合你的平台点击进入

链接: http://www.fly63.com/article/detial/611

关闭

Vue中axios的封装

axios 是 Vue 官方推荐的一个 HTTP 库,用 axios 官方简介来介绍它,就是:Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。作为一个优秀的 HTTP 库,axios 打败了曾经由 Vue 官方团队维护的 vue-resource

vue使用axios实现excel文件下载的实现

前端VUE页面上的导出或者下载功能,一般是调用后端的一个接口,由接口生成excel,word这些文件的流信息,返回给vue,然后由vue去构建下载的动作,这边整理了一下,封装了一下,方便以后复用

axios-mock-adapter_一个axios调试好用的工具

axios-mock-adapter可以用来拦截http请求,并模拟响应,使用起来也很简单,比如你想模拟下服务器返回个500错误,什么404找不到、403禁止访问、500服务器错误、503服务不可用、504网关超时等等,你都能模拟出来

axios 拦截器显示和关闭Loading

使用Loading分为2种情况,第一种是使用一些组件库自带的loading,另一种是使用我们自己写的loading,现分开介绍使用方法。使用element ui 带的Loading

封装 axios 实现自动重试

因为 Axios 是支持 Promise,所以我们的方法也支持。axios 如果成功了我们也 resolve。axios 如果失败了我们先判断次数,然后根据具体的错误,进行重试。

自己动手实现一个axios

作为一名前端er,对于数据请求的第三方工具axios,一定不会陌生,如果还是有没有用过,或者不了解的小伙伴,这里给你们准备了贴心的中文文档 ,聪明的你们一看就会~

vue中Axios的封装和API接口的管理

我们所要的说的axios的封装和api接口的统一管理,其实主要目的就是在帮助我们简化代码和利于后期的更新维护。在vue项目中,和后台交互获取数据这块,我们通常使用的是axios库,它是基于promise的http库

axios处理Http请求的基本使用方法总汇

axios的功能特性:在浏览器中发送 XMLHttpRequests 请求,在 node.js 中发送 http请求,支持 Promise API,拦截请求和响应,转换请求和响应数据,自动转换 JSON 数据,客户端支持保护安全免受 XSRF 攻击

网络模块axios的简单应用

例子中使用到的url仅作为示例,不一定有效,想要复现代码需要使用能够提供数据的有效服务器接口url,axios:ajax i/o system;是用于在Vue.js中发送网络请求的第三方框架;可通过许多方式发送网络请求比如:

axios统一接口管理及优化

根据在项目的使用,发现有以下问题需要优化:withAxios导出的接口方法对象对编辑器来说是不透明的,所以代码提示功能缺失。同一个方法调用多次,如何保证组件总是获取到最后一次的返回信息。

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!