axios的使用介绍

axios 配置及使用

在线CDN地址

https://unpkg.com/axios/dist/axios.min.js

安装

npm i axios -S

导入

import axios from 'axios'

全局配置

方案一

创建实例的时候传入配置对象

// 创建实例的时候传入配置对象
const $https = axios.create({
  baseURL: 'https://some-domain.com/api/',  // 设置接口地址
  timeout: 1000,                            //设置超时时间
  headers: {'Content-Type': 'application/x-www-form-urlencoded'}  //设置请求头
});

先创建实例对象, 在进行配置

// 先创建实例对象
 const $https = axios.create();
// 再进行配置
$https.defaults.baseURL='https://api.example.com' ;
// 设置超时时间
$https.defaults.timeout = 2500;
// 设置认证请求头
$https.defaults.headers.common['Authorization'] = AUTH_TOKEN;

需要使用实例对象$https发送请求

方案二

// 设置接口地址
axios.defaults.baseURL='http://www.api.com'
// 对提交给服务端的数据进行预处理,将对象{}=>queryString查询字符串的格式;
// 因为默认提交的是json(Content-Type:application/json), 服务端无法对json直接处理
axios.defaults.transformRequest: [function (data, headers) {
    // 对提交给服务端的数据进行预处理
    // data默认为一个对象
    if(typeof(data)=='object'){
        let arr=[];
        for(var key in data){
            arr.push(key+'='+data[key]);    
        }
        // 最终返回的数据格式:name=zs&age=30
        return arr.join('&')
    }
    return data;
  }];
// 设置公共请求头
axios.defaults.headers.common['Authorization'] = AUTH_TOKEN;
// 设置post请求头
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';

使用

发送get请求

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

发送post请求

axios.post('/user', {
    firstName: 'Fred',
    lastName: 'Flintstone'
  })
  .then(function (response) {
    console.log(response);
  })
  .catch(function (error) {
    console.log(error);
  });
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 国家电网公司企业标准(Q/GDW)- 面向对象的用电信息数据交换协议 - 报批稿:20170802 前言: 排版 ...
    庭说阅读 14,099评论 6 13
  • 33、JS中的本地存储 把一些信息存储在当前浏览器指定域下的某一个地方(存储到物理硬盘中)1、不能跨浏览器传输:在...
    萌妹撒阅读 6,511评论 0 2
  • 简介 Axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中。本文先从浏览...
    microkof阅读 13,519评论 0 4
  • ## 框架和库的区别?> 框架(framework):一套完整的软件设计架构和**解决方案**。> > 库(lib...
    Rui_bdad阅读 8,209评论 1 4
  • 看了《请回答1988》 ,女主一部剧喜欢了三个男生 。刚开始是善宇,然后是正焕,最后和阿泽在一起 。...
    王胖胖摇啊摇阅读 3,294评论 0 1

友情链接更多精彩内容