您好,登錄后才能下訂單哦!
小編這次要給大家分享的是Vue怎么請求傳公共參數,文章內容豐富,感興趣的小伙伴可以來了解一下,希望大家閱讀完這篇文章之后能夠有所收獲。
我就廢話不多說了,大家還是直接看代碼吧~
// 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); } )
補充知識:Vue聯合axios發送后臺post請求時的參數問題
開始用的是vue-resource,后來發現這個已經很久沒有更新了,作者已經停止更新了,而且就連作者也推薦用axios,那么我就用axios吧,改成axios之后,就出現了一個問題:參數問題。
怎么個參數問題呢?用vue-response來發送post請求的時候,傳入的參數到后臺是一個一個分開的,比如傳了參數
{ username:'name1', password:'pwd1' }
就是很簡單的用戶名和密碼,vue-resource傳到后臺之后,后臺的接口方法參數是兩個,一個是username,一個是password,都可以分別取到;但是axios不同,axios到后臺之后,是一個map結構的對象,需要用@RequestBody Map map這種方式來獲取,然后從map中一個一個取出來,這樣也可以。但是有沒有辦法讓axios傳給后臺的參數也是一個一個的呢?當然有。
第一個方法就是URLSearchParams,用這個添加好參數,到后臺就是一個一個的,但是這個IE不支持。
還有一個辦法,就是qs,qs的話有兩種引入方式,一種就是用npm安裝好后,直接import,然后就可以用了;另一種就是在頁面直接引入qs.js,就是<script src='js/qs.js'></script>這種方式,然后
注意了!
這里要注意了!
如果是import方式引入的,我們就用qs.stringify調用就好了,但是!!!
注意了!
如果是js文件引入的方式,用的Qs,不是qs,Q是大寫的Q,也就是Qs.stringify。
然后就可以了!
看完這篇關于Vue怎么請求傳公共參數的文章,如果覺得文章內容寫得不錯的話,可以把它分享出去給更多人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。