码迷,mamicode.com
首页 > 移动开发 > 详细

Vue学习-axios

时间:2020-06-25 17:35:08      阅读:75      评论:0      收藏:0      [点我收藏+]

标签:sre   pread   pat   ios   head   一个   delete   --   lang   

功能特点

  • 在浏览器中发送XMLHttpRequests请求
  • 在node.js 中发送http请求
  • 支持Promise API
  • 拦截请求和响应
  • 转换请求和响应数据

安装

npm install axios --save

请求方式

axios(config)

axios.request(config)

axios.get(url[,config])

import axios from ‘axios‘

//1.没有请求参数
axios.get(‘url‘)
      .then(res=>{ console.log(res)})
      .catch(err=>{console.log(err) })  

//2.有请求参数
axios.get(‘url‘,{params:{type:‘sell‘,page:1}})
     .then(res=>{console.log(res)})
     .catch(err=>{console.log(err)});

axios.delete(url[,config])

axios.head(url[,config])

axios.post(url[,config])

axios.put(url[,config])

axios.patch(url[,config])

axios.all()并发请求

axios.all([axios({url:‘url‘}),axios({url:‘url‘})])
     .then(results=>{  //results是一个数组,results[0]是第一个回调的结果;results[1]是第二个回调的结果;
            var result1=results[0]
            var result2=results[1]
      })

//axios.all([])返回的结果是一个数组,使用axios.spread可将数组[res1,res2]展开(spread)为res1,res2
axios.all([axios({url:‘url‘}),axios({url:‘url‘})])
     .then(axios.spread((res1,res2)=>{
            console.log(res1)
            console.log(res2)
      }))

拦截器

  • 4个拦截(请求成功,请求失败,响应成功,响应失败)
const instance=axios.create({baseURL:‘‘,timeout:5000});

instance.interceptors.request.use(config=>{
      console.log(‘request 成功‘);
      return config;
}
,err=>{
      console.log(‘request 失败‘);
      return err;
})

instance.interceptors.response.use(response=>{
      console.log(‘response 成功‘);
      return response.data;
}
,err=>{
      console.log(‘response 失败‘);
      return err;
})

Vue学习-axios

标签:sre   pread   pat   ios   head   一个   delete   --   lang   

原文地址:https://www.cnblogs.com/bqh10086/p/13191629.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!