作用
Axios是一個基於promise 的HTTP庫,可以用在瀏覽器和node.js中。
原理
axios本質上也是對原生XHR的封裝,只不過它是
Promise的實現版本,符合最新的
ES規範。
主要特點
從瀏覽器創建XMLHttpRequests
從 node.js 創建 http 請求
支持 Promise API
攔截請求和回響
轉換請求和回響數據
取消請求
自動轉換JSON數據
客戶端支持防禦XSRF
套用
發起一個 GET 請求。
const axios = require('axios');
// 向給定ID的用戶發起請求
axios.get('/user?ID=12345')
.then(function (response) {
// 處理成功情況
console.log(response);
})
.catch(function (error) {
// 處理錯誤情況
console.log(error);
})
.finally(function () {
// 總是會執行
});
// 上述請求也可以按以下方式完成(可選)
axios.get('/user', {
params: {
ID: 12345
}
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
})
.finally(function () {
// 總是會執行
});
// 支持async/await用法
async function getUser() {
try {
const response = await axios.get('/user?ID=12345');
console.log(response);
} catch (error) {
console.error(error);
}
}
發起一個POST請求。
axios.post('/user', {
firstName: 'Fred',
lastName: 'Flintstone'
})
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});