[英]400 Bad request error in Ajax call to Spring controller
我正在嘗試將數據發送到Spring控制器,但我在瀏覽器控制台中收到了400 badrequest錯誤。 這是我的代碼:
JavaScript的:
function insertDiscussion(title, content,tags) {
$.ajax({
async:false,
url: 'save',
contentType: 'application/json; charset=utf-8',
type: 'POST',
dataType: 'json',
data: {
"title": title,
"content": content,
"tags":tags
},
success: function(data) {
generateNoty(data, "warning");
}
});
}
控制器:
@RequestMapping(value = "/save", method = RequestMethod.POST)
public String saveDiscussion(
@RequestParam String title,
@RequestParam String content, @RequestParam(value="tags") String[] tags) {
return "hello";
}
如果我們不發送數組,示例正在工作。 當我試圖發送數組時,它給出了400 Bad Request錯誤。
如果我使用鏈接訪問相同的控制器,它的工作正常,但它不能與jquery ajax一起使用。 我錯過了什么嗎?
你期待@RequestParam
( POST
/ GET
參數),但發送JSON
作為請求體。 你需要使用@RequestBody
。
嘗試
public String saveDiscussion(@RequestBody Map json) {
return "hello";
}
也可以看看:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.