Vue3發(fā)送post請(qǐng)求出現(xiàn)400?Bad?Request報(bào)錯(cuò)的解決辦法
查了一下網(wǎng)上資料,報(bào)400一般無(wú)非就是兩種:
1. Bad Request:“錯(cuò)誤的請(qǐng)求"
2. Invalid Hostname:"不存在的域名”
在這里我的報(bào)錯(cuò)是因?yàn)榍岸苏?qǐng)求頭的content-type和后端不一致。
一般后端默認(rèn)的內(nèi)容類型是 application/x-www-form-urlencoded,而axios默認(rèn)的是 applecation/json。
但是也有例外,要根據(jù)后端的注解來(lái)區(qū)分我們要轉(zhuǎn)換的類型。
根據(jù)上一篇筆記上說(shuō)的:
@RequestBody 用 content-type = application/json @RequestParam 用 content-type = application/x-www-form-urlencoded
自行更改請(qǐng)求頭。
經(jīng)過(guò)查資料發(fā)現(xiàn)它還會(huì)有兩種報(bào)錯(cuò)。
1.傳參錯(cuò)誤
前端提交的數(shù)據(jù)的字段名稱或者字段類型和后端的實(shí)體類不一致,導(dǎo)致無(wú)法封裝。
解決:對(duì)照字段名稱、類型與后端需要的保持一致
2.前后端數(shù)據(jù)格式不一致
前端提交到后臺(tái)的數(shù)據(jù)應(yīng)該是json字符串類型,而前端沒(méi)有將對(duì)象轉(zhuǎn)換成字符串類型。
解決:使用 qs.stringify() 將前端傳遞的對(duì)象轉(zhuǎn)換為字符串,格式化傳遞給后臺(tái)的參數(shù)
在ajax請(qǐng)求中可以使用 JSON.stringify()
// 要序列化的數(shù)據(jù)
var a = {name:'hehe',age:10};
// qs.stringify 序列化結(jié)果,qs.js支持跟多的類型和方法。
name=hehe&age=10
// JSON.stringify序列化結(jié)果
"{"a":"hehe","age":10}"另外使用qs.stringify() 序列化以后,再調(diào)用接口,數(shù)據(jù)傳輸模式會(huì)自動(dòng)改成 content-type = application/x-www-form-urlencoded ,這樣就與后端一致。
總結(jié)
到此這篇關(guān)于Vue3發(fā)送post請(qǐng)求出現(xiàn)400 Bad Request報(bào)錯(cuò)的解決辦法的文章就介紹到這了,更多相關(guān)Vue3報(bào)錯(cuò)400 Bad Request內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Vue引入并使用Element組件庫(kù)的兩種方式小結(jié)
本文主要介紹了Vue引入并使用Element組件庫(kù)的兩種方式小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01
vue項(xiàng)目實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn)的方法
這篇文章主要給大家分享的是vue項(xiàng)目實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn)的方法,vue-router是前端開(kāi)發(fā)中用來(lái)實(shí)現(xiàn)路由頁(yè)面跳轉(zhuǎn)的一個(gè)模塊。下面小編將帶來(lái)如何在已經(jīng)創(chuàng)建好的vue-router項(xiàng)目基礎(chǔ)下實(shí)現(xiàn)頁(yè)面跳轉(zhuǎn),需要的朋友可以參考一下2021-11-11
使用Vue實(shí)現(xiàn)帶拖動(dòng)和播放功能的時(shí)間軸
這篇文章主要為大家詳細(xì)介紹了如何使用Vue實(shí)現(xiàn)帶拖動(dòng)和播放功能的時(shí)間軸,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-03-03
vue+element加入簽名效果(移動(dòng)端可用)
這篇文章主要介紹了vue+element加入簽名效果(移動(dòng)端),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06
vue點(diǎn)擊單張圖片放大實(shí)現(xiàn)步驟(純js)
這篇文章主要給大家介紹了關(guān)于vue點(diǎn)擊單張圖片放大實(shí)現(xiàn)的相關(guān)資料,在vue項(xiàng)目中實(shí)現(xiàn)點(diǎn)擊圖片放大功能相信對(duì)大家來(lái)說(shuō)都不陌生,文中給出了詳細(xì)的js示例代碼,需要的朋友可以參考下2023-07-07
vue antd的from表單中驗(yàn)證rules中type的坑記錄
這篇文章主要介紹了vue antd的from表單中驗(yàn)證rules中type的坑記錄,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-04-04

