解決axios發(fā)送post請求返回400狀態(tài)碼的問題
今天在用 axios 發(fā)送一個跨域的post請求時,遇到了一個坑:Uncaught (in promise) Error: Request failed with status code 400。
前臺代碼如下:
axios({ method: "post", url: "http://localhost:8080/employee/testpost", data: { username: '234234', password: '4565' } }).then((res) => { console.log(res.data); })
后臺代碼如下:
@CrossOrigin @PostMapping("/employee/testpost") @ResponseBody public Result testpost(@RequestParam(value = "username", required = true) String username, @RequestParam(value = "password", required = true) String password) { System.out.println(username + " , " + password); Result json = new Result(); json.setResult(1); return json; }
而當我在postman上發(fā)送post請求時就能成功獲得返回數(shù)據(jù)。困擾了很久,才發(fā)現(xiàn)是請求頭的問題。axios請求頭的 Content-Type 默認是 application/json,而postman默認的是 application/x-www-form-urlencoded。我這里采取的解決辦法是改變后臺的接收方式:
@CrossOrigin @PostMapping("/employee/testpost") @ResponseBody public Result testget(@RequestBody Map map) { System.out.println(map.get("username") + " , " + map.get("password")); Result json = new Result(); json.setResult(1); return json; }
這樣數(shù)據(jù)就成功返回了!
以上這篇解決axios發(fā)送post請求返回400狀態(tài)碼的問題就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Vue?ElementUI?table實現(xiàn)雙擊修改編輯某個內容的方法
在實現(xiàn)表格單元格雙擊編輯功能時,需使用@cell-dblclick事件來觸發(fā)雙擊操作,將單元格切換為input輸入框,通過ref引用和綁定失焦及回車事件來確認編輯,同時,需要處理編輯數(shù)據(jù)的更新和方法邏輯的完善2024-09-09Vue.set()動態(tài)的新增與修改數(shù)據(jù),觸發(fā)視圖更新的方法
今天小編就為大家分享一篇Vue.set()動態(tài)的新增與修改數(shù)據(jù),觸發(fā)視圖更新的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-09-09