axios 是乙個基於 promise 的 http 庫,可以用在瀏覽器和 node.js 中
參考官方文件:
//使用npm
npm install axios --s**e
//使用yarn
yarn add axios
vue-cli 中單個元件引入(es6)
import axios from 'axios'
如果要全域性使用axios就需要在main.js中設定成全域性的,然後再元件中通過this呼叫
vue.prototype.$axios =axios;this.$axios.get();
如果傳送乙個簡單的請求,且沒有引數(也可以寫為axios('url').then().catch(),axios預設get請求)
import axios from axios //傳送乙個簡單的http請求
axios.get('url') //
url為http的請求位址
.then((res)=>)
.catch((err)=>)
傳送多個axios請求
functiongetuseraccount()
function
getuserpermissions()
axios.all([getuseraccount(), getuserpermissions()])
.then(axios.spread(
function
(res1, res2) ));
如果需要攜參請求,例如我請求的後端介面為:/user?id=12345,該介面需要引數id的值,可以採用以下三種方式:
//使用get請求
axios.get('/user',
})//
使用get請求
axios(
});//
使用post請求
axios(
});
後兩種方式,get請求和post請求引數分別對應params和data,為乙個物件,後端伺服器可以直接取到引數中的字段。
如果採用函式形式封裝axios請求,param為getuser傳入的引數,應該為乙個物件:
functiongetuser (param) )
}
採用async/await的形式
async functiongetuser (param) )
console.log(res)
} catch
(err)
}
axios 請求傳參
let params params 1.get 請求不傳參 eg this.axios.get then res 2.get 請求攜帶引數 get 請求攜帶引數,攜帶斜槓後引數 例如id id this.axios.get 動態的id then res get 攜帶請求引數,問號後邊的引數 例如 e...
axios處理陣列傳參
但有一種post情況不是用表單提交的,後端希望接收的引數與表單提交的格式保持一致,這時就需要前端對引數做序列化處理了,這裡常用的是qs處理 安裝qs npm install qs s後端要求的陣列引數為以下格式 前端的原始引數 let params params qs.stringify param...
傳陣列 Axios陣列傳參問題
在開發過程中遇到乙個前端通過axios向後端api請求,引數傳遞格式不正確導致的請求失敗的問題,在此記錄一下。後端是乙個查詢介面,查詢引數中有幾個是陣列的形式 傳送請求時應該以params是通過url方式傳遞 預期格式pageno 1 pagesize 15 sn 123 sn 456 mo num...