axios發送post請求時,出現了參數后臺接收不到的情況,分析了下請求,發現是請求頭content-type不對,是application/json,正常應該是application/x-www-form-urlencoded。
解決方法有以下三種:
1、設置axios的默認請求頭
//設置全局的 axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'; var instance = axios.create({}) // 這樣創建出來的 只需要: instance.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
2、使用URLSearchParams來構建參數
var params = new URLSearchParams(); params.append("username", _this.username); params.append("password", _this.password); axios.post("/service/login", paramsOfJson ).then(function (response) { console.log(response); }).catch(function (error) { console.log(error); })
3、后臺使用@requestBody接收
@PostMapping(value = "/login") public String testLogin(@RequestBody Map dataMap)
以上這篇axios發送post請求springMVC接收不到參數的解決方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com