首先簡(jiǎn)單了解什么是Axios?
Axios是一個(gè)基于Promise的HTTP客戶端,用于瀏覽器和Node.js中發(fā)送HTTP請(qǐng)求。它支持各種HTTP請(qǐng)求方法,如GET、POST、PUT、DELETE等,并且可以攔截請(qǐng)求和響應(yīng),本質(zhì)上也是對(duì)原生XHR的封裝,只不過它是Promise的實(shí)現(xiàn)版本,符合最新的ES規(guī)范。
關(guān)于axios的特點(diǎn),可以查看axios中文文檔,還可以了解一下axios, ajax和fetch的詳細(xì)比較內(nèi)容。
接下來開始安裝axios,在項(xiàng)目下執(zhí)行npm install axios。
之后在main.js中,添加:
import axios from 'axios' //引入
以上完成后就可以使用了,接下來以get請(qǐng)求為例,使用方式如下:
this.axios.get(url).then(res => {
//請(qǐng)求成功,觸發(fā)then中的函數(shù)
console.log(res)
})
.catch(error =>
//請(qǐng)求失敗,觸發(fā)catch中的函數(shù) 可省略
console.log(error)
)
它的參數(shù)需要寫在params屬性下,也就是:
//帶參數(shù)的get請(qǐng)求
let url = "..."
this.$axios.get(url, {
params: {
id: 1
}
})
.then((res) => {
console.log(res) //返回的數(shù)據(jù)
})
.catch((err) => {
console.log(err) //錯(cuò)誤信息
})
POST請(qǐng)求與之類似。