vue中怎么利用axios實現(xiàn)一個登錄請求攔截器,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。
西湖網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)公司2013年成立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)。
1.安裝配置axios
cnpm install --save axios
我們可以建一個js文件來做這個統(tǒng)一的處理,新建一個axios.js,如下
import axios from 'axios' import { Indicator } from 'mint-ui'; import { Toast } from 'mint-ui'; // http request 攔截器 axios.interceptors.request.use( config => { Indicator.open() return config; }, err => { Indicator.close() return Promise.reject(err); }); // http response 攔截器 axios.interceptors.response.use( response => { Indicator.close() return response; }, error => { Indicator.close() }); export default axios
然后在main.js中引入這個js文件
import axios from './axio'; Vue.prototype.$axios = axios;
這樣就可以使用axios去請求了,在組件中可以用this.axios去調(diào)用
this.$axios({ url:requestUrl+'homePage/v1/indexNewPropertiesResult', method:'POST', }).then(function(response){ //接口返回數(shù)據(jù) console.log(response) that.modulesArr=response.data.data.modules; // that.getRecommendGoods(0); });
只有用axios請求接口,才能去攔截,現(xiàn)在已經(jīng)能在axios.js中攔截到了,可以在兩個狀態(tài)中做你需要的操作
補充:
axios使用攔截器統(tǒng)一處理所有的http請求
axios使用攔截器
在請求或響應(yīng)被 then 或 catch 處理前攔截它們。
?http request攔截器
// 添加請求攔截器 axios.interceptors.request.use(function (config) { // 在發(fā)送請求之前做些什么 return config; }, function (error) { // 對請求錯誤做些什么 return Promise.reject(error); });
?http respones攔截器
// 添加響應(yīng)攔截器 axios.interceptors.response.use(function (response) { // 對響應(yīng)數(shù)據(jù)做點什么 return response; }, function (error) { // 對響應(yīng)錯誤做點什么 return Promise.reject(error); });
?移除攔截器
var myInterceptor = axios.interceptors.request.use(function () {/*...*/}); axios.interceptors.request.eject(myInterceptor);
?為自定義axios實例添加攔截器
var instance = axios.create(); instance.interceptors.request.use(function () {/*...*/});
看完上述內(nèi)容,你們掌握vue中怎么利用axios實現(xiàn)一個登錄請求攔截器的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!