Axios(JS HTTP库/Ajax库)
特征
- 比Jquery轻量,但处理请求不多的时候,可以使用
- 基于Promise语法标准
- 支持nodejs
- 自动转换JSON数据
用法
get
// Make a request for a user with a given ID
axios.get('/user?ID='+USER.ID)
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
//或者利用params属性传递参数
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);
});
同时处理多个请求(基于Promise语法标准)
function getUserAccount() {
return axios.get('/user/12345');
}
function getUserPermissions() {
return axios.get('/user/12345/permissions');
}
axios.all([getUserAccount(), getUserPermissions()])
.then(axios.spread(function (account, permission) {
//all 会等到所有请求都完成,
}));
其他axios API
和Jquery相似,就不多说了
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]])
详细可参考github文档
安装
Using npm:
$ npm install axios
Using bower:
$ bower install axios
Using cdn:
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>