Vue 請(qǐng)求傳公共參數(shù)的操作
我就廢話不多說了,大家還是直接看代碼吧~
// An highlighted block//http request攔截器axios.interceptors.request.use(config =>{ const token = window.sessionStorage.getItem(’Tk_token’) const user_id=window.sessionStorage.getItem(’Tk_user_id’) // config.data = JSON.stringify(config.data); // config.headers = { // ’Content-Type’:’application/x-www-form-urlencoded’ // } if(token){ config.params = {’token’:token,’user_id’:user_id} } console.log(config);return config;},err =>{return Promise.reject(err);})
補(bǔ)充知識(shí):Vue聯(lián)合axios發(fā)送后臺(tái)post請(qǐng)求時(shí)的參數(shù)問題
開始用的是vue-resource,后來發(fā)現(xiàn)這個(gè)已經(jīng)很久沒有更新了,作者已經(jīng)停止更新了,而且就連作者也推薦用axios,那么我就用axios吧,改成axios之后,就出現(xiàn)了一個(gè)問題:參數(shù)問題。
怎么個(gè)參數(shù)問題呢?用vue-response來發(fā)送post請(qǐng)求的時(shí)候,傳入的參數(shù)到后臺(tái)是一個(gè)一個(gè)分開的,比如傳了參數(shù)
{ username:’name1’, password:’pwd1’}
就是很簡單的用戶名和密碼,vue-resource傳到后臺(tái)之后,后臺(tái)的接口方法參數(shù)是兩個(gè),一個(gè)是username,一個(gè)是password,都可以分別取到;但是axios不同,axios到后臺(tái)之后,是一個(gè)map結(jié)構(gòu)的對(duì)象,需要用@RequestBody Map map這種方式來獲取,然后從map中一個(gè)一個(gè)取出來,這樣也可以。但是有沒有辦法讓axios傳給后臺(tái)的參數(shù)也是一個(gè)一個(gè)的呢?當(dāng)然有。
第一個(gè)方法就是URLSearchParams,用這個(gè)添加好參數(shù),到后臺(tái)就是一個(gè)一個(gè)的,但是這個(gè)IE不支持。
還有一個(gè)辦法,就是qs,qs的話有兩種引入方式,一種就是用npm安裝好后,直接import,然后就可以用了;另一種就是在頁面直接引入qs.js,就是<script src=’js/qs.js’></script>這種方式,然后
注意了!
這里要注意了!
如果是import方式引入的,我們就用qs.stringify調(diào)用就好了,但是!!!
注意了!
如果是js文件引入的方式,用的Qs,不是qs,Q是大寫的Q,也就是Qs.stringify。
然后就可以了!
以上這篇Vue 請(qǐng)求傳公共參數(shù)的操作就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. Java8內(nèi)存模型PermGen Metaspace實(shí)例解析2. 概述IE和SQL2k開發(fā)一個(gè)XML聊天程序3. 利用CSS3新特性創(chuàng)建透明邊框三角4. HTML <!DOCTYPE> 標(biāo)簽5. XML入門的常見問題(二)6. CSS3實(shí)例分享之多重背景的實(shí)現(xiàn)(Multiple backgrounds)7. HTML5 Canvas繪制圖形從入門到精通8. 存儲(chǔ)于xml中需要的HTML轉(zhuǎn)義代碼9. HTML DOM setInterval和clearInterval方法案例詳解10. XML入門的常見問題(一)
