axios(基於Promise的HTTP客戶端作用於瀏覽器和node.js)

axios(基於Promise的HTTP客戶端作用於瀏覽器和node.js)

本詞條是多義詞,共2個義項
更多義項 ▼ 收起列表 ▲

Axios,是一個基於promise的網路請求庫,作用於node.js和瀏覽器中,它是 isomorphic 的(即同一套代碼可以運行在瀏覽器和node.js中)。在服務端它使用原生node.js http模組, 而在客戶端 (瀏覽端) 則使用XMLHttpRequest。

基本介紹

  • 中文名:Axios
  • 外文名:Axios
  • 所屬學科計算機科學
  • 軟體語言:JavaScript
作用,原理,主要特點,套用,

作用

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);
});

相關詞條

熱門詞條

聯絡我們