axios简单理解

时间:2023-03-09 01:51:45
axios简单理解

发起一个GET请求

  • 直接使用axios('/user')方法,axios()方法默认为GET方式
axios(’/user/12345’);
  • 使用axios.get()方法,参数直接写以?key=value的形式,多个使用?key1=value1&key2=value2
axios.get('/user?key=value')
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
  • 使用axios.get()方法,使用params对象来传递参数
axios.get('/user', {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
  • 使用配置式
axios({
method:'get',
url:'http://bit.ly/2mTM3nY',
responseType:'stream' //注意这里传送的是图片所以用'stream'
})
.then(function(response) {
response.data.pipe(fs.createWriteStream('ada_lovelace.jpg'))
});

发起一个POST请求

  • 使用axios().post()方法,第二个参数即为要传递的参数对象
axios.post('/user', {
firstName: 'Fred',
lastName: 'Flintstone'
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
  • 使用配置式
axios({
method: 'post',
url: '/user/12345',
data: {
firstName: 'Fred',
lastName: 'Flintstone'
}
});

同时多个请求批量处理

function getUserAccount() {
return axios.get('/user/12345');
} function getUserPermissions() {
return axios.get('/user/12345/permissions');
} axios.all([getUserAccount(), getUserPermissions()])
.then(axios.spread(function (acct, perms) {
// 两个请求都已完成
}));

参考链接:axios