Vue學(xué)習(xí)之a(chǎn)xios的使用方法實(shí)例分析
本文實(shí)例講述了Vue學(xué)習(xí)之a(chǎn)xios的使用方法。分享給大家供大家參考,具體如下:
Axios 是一個(gè)用于實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求的JavaScript庫(kù),可以用在網(wǎng)頁(yè)和 node.js 中,用于創(chuàng)建 XMLHttpRequests,vue官方支持使用axios代替vue--resourse來實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)請(qǐng)求。
使用前需要在你的項(xiàng)目中安裝axios,例如通過npm安裝庫(kù):
npm install --save axios
接著在項(xiàng)目中引入axios:
import axios from 'axios'
1、get請(qǐng)求
直接使用axios的全局變量來調(diào)用get方法,get中第一個(gè)參數(shù)傳遞url,第二個(gè)參數(shù)是相關(guān)配置,在其中可以傳遞params參數(shù)(參數(shù)以?形式加在url末尾),進(jìn)行header的設(shè)置等。使用.then接收返回值,可以采用函數(shù)來處理返回結(jié)果res,其中res.data或者res.body是返回的數(shù)據(jù)。使用.catch捕獲異常,并可以打印錯(cuò)誤信息參數(shù)error。
axios.get('data/zodiac.json',{ params:{ id:"101" }, header:{ token:"axios" } }).then(res =>{ this.msg=res.data; }).catch(error =>{ console.log(error); })
2、post請(qǐng)求
post方法調(diào)用、回掉、異常捕獲的使用與get類似。不同的是其參數(shù)分為三個(gè),第一個(gè)是url地址,第二個(gè)是要傳遞的數(shù)據(jù),第三個(gè)是傳輸選項(xiàng)配置。與get方法不同,post專門使用第二個(gè)參數(shù)進(jìn)行數(shù)據(jù)傳遞,而不像get中將數(shù)據(jù)設(shè)置在配置選項(xiàng)params中。
axPost(){ axios.post('./data/test.php', //url { //發(fā)送的數(shù)據(jù) userId:'105' }, { //option選項(xiàng) headers:{ token:"axPost" } } ).then(res =>{ //接收結(jié)果 this.msg=res.data; }).catch(err=>{ //處理錯(cuò)誤 this.msg=err; }) }
3、HTTP請(qǐng)求
也可以直接使用http進(jìn)行數(shù)據(jù)請(qǐng)求,直接進(jìn)行url、method、data、headers、params等的設(shè)置,例如使用http發(fā)送post請(qǐng)求:
axios({ url:"http://localhost:63342/Web/Learning/Javascript/Vue/VueStart/data/zodiac.json", method:"post", data:{ userId:"106" }, headers:{ token:"axHttp" } }).then(res=>{ this.msg=res.data; })
4、攔截器
axios也提供了在網(wǎng)絡(luò)請(qǐng)求發(fā)送前與數(shù)據(jù)返回時(shí)進(jìn)行攔截的函數(shù)interceptors,以便進(jìn)行相關(guān)處理。例如在發(fā)送前使用request.use攔截,進(jìn)行你想要的執(zhí)行的操作后再將config返回出去,在請(qǐng)求返回時(shí)使用response.use進(jìn)行攔截,操作后再將結(jié)果返回:
axios.interceptors.request.use(config =>{ console.log("axois請(qǐng)求"); return config; }); axios.interceptors.response.use(res =>{ console.log("axois回調(diào)"); return res; })
希望本文所述對(duì)大家vue.js程序設(shè)計(jì)有所幫助。
- vue 使用axios 數(shù)據(jù)請(qǐng)求第三方插件的使用教程詳解
- Vue二次封裝axios為插件使用詳解
- vue下axios攔截器token刷新機(jī)制的實(shí)例代碼
- vue 對(duì)axios get pust put delete封裝的實(shí)例代碼
- Vue axios 將傳遞的json數(shù)據(jù)轉(zhuǎn)為form data的例子
- Vue 設(shè)置axios請(qǐng)求格式為form-data的操作步驟
- 關(guān)于Vue中axios的封裝實(shí)例詳解
- vue中axios的二次封裝實(shí)例講解
- vue+axios實(shí)現(xiàn)post文件下載
- vue + axios get下載文件功能
- Vue CLI項(xiàng)目 axios模塊前后端交互的使用(類似ajax提交)
- vue簡(jiǎn)單封裝axios插件和接口的統(tǒng)一管理操作示例
相關(guān)文章
Vue實(shí)戰(zhàn)之項(xiàng)目開發(fā)時(shí)常見的幾個(gè)錯(cuò)誤匯總
vue作為前端主流的3大框架之一,目前在國(guó)內(nèi)有著非常廣泛的應(yīng)用,下面這篇文章主要給大家介紹了關(guān)于Vue實(shí)戰(zhàn)之項(xiàng)目開發(fā)時(shí)常見的幾個(gè)錯(cuò)誤匯總的相關(guān)資料,對(duì)大家學(xué)習(xí)或者使用vue具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-03-03vue中改變選中當(dāng)前項(xiàng)的顯示隱藏或者狀態(tài)的實(shí)現(xiàn)方法
下面小編就為大家分享一篇vue中改變選中當(dāng)前項(xiàng)的顯示隱藏或者狀態(tài)的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-02-02django使用channels2.x實(shí)現(xiàn)實(shí)時(shí)通訊
這篇文章主要介紹了django使用channels2.x實(shí)現(xiàn)實(shí)時(shí)通訊,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-11-11關(guān)于在vue2中使用weixin-js-sdk的詳細(xì)步驟
公司最近有微信公眾號(hào)的需求,那么微信登錄授權(quán)和如何使用WX-JSSDk實(shí)現(xiàn)分享等等肯定是最頭疼的問題,這篇文章主要給大家介紹了關(guān)于在vue2中使用weixin-js-sdk的詳細(xì)步驟,需要的朋友可以參考下2024-07-07Vue數(shù)組中出現(xiàn)__ob__:Observer無法取值問題的解決方法
__ob__: Observer這個(gè)屬性其實(shí)是Vue監(jiān)控變量產(chǎn)生的,下面這篇文章主要給大家介紹了關(guān)于Vue數(shù)組中出現(xiàn)__ob__:?Observer無法取值問題的解決方法,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-03-03