[英]400 bad request error in Ajax POST to spring RestController
我有一個ajax代碼
/**
* Ajax Logic for submitions
* */
$.ajax({
contentType : 'application/json; charset=utf-8',
type: 'POST',
url: '/domain/insert/',
dataType : 'json',
data : 'firstName:' + $("#first_name").val() /*+ "&lastName;=" + $("#lastName").val() + "&email;=" + $("#email").val()*/,
success : function(callback){
console.log("Data inserted.........");
},
error : function(){
console.log("Error.........");
}
});
將控制台作為
POST http://localhost:8080/domain/insert/ 400 (Bad Request)
Z.cors.e.crossDomain.send @ common.min.js:3
J.extend.ajax @ common.min.js:3
t.length.t.steps.onStepChanged @ forms_wizard.min.js:34
J.event.dispatch @ common.min.js:2
m.handle @ common.min.js:2
J.event.trigger @ common.min.js:2
J.fn.extend.triggerHandler @ common.min.js:2
(anonymous function) @ wizard_steps.min.js:1
c @ common.min.js:2
d.fireWith @ common.min.js:2
(anonymous function) @ common.min.js:2
c @ common.min.js:2
d.fireWith @ common.min.js:2
a @ common.min.js:2
c @ common.min.js:2
d.fireWith @ common.min.js:2
d.fire @ common.min.js:2
J.extend.dequeue @ common.min.js:2
i.complete @ common.min.js:2
c @ common.min.js:2
d.fireWith @ common.min.js:2
I.l @ common.min.js:1
J.fx.tick @ common.min.js:3
forms_wizard.min.js:47
Error.........
我在RestController中的insert方法是
@RequestMapping(value = "/question/", headers="Accept=*/*", consumes="application/json", method = RequestMethod.POST)
public ResponseEntity<Void> insert(@RequestBody User user) {
System.out.println("Creating " + user.getFirstName());
service.save(user);
return new ResponseEntity<Void>(HttpStatus.CREATED);
}
好的,如果我使用Postman將數據發布到控制器,則成功,但是通過上面的ajax代碼,我得到400錯誤.....
您的data
屬性是問題
您需要在數據中傳遞一個json對象,以使其工作
data : {username: 'username'}
想要將其寫為評論,但還不能...
您的JQuery版本是什么?如果使用Postman進行發布,您的設置是什么?
您還會為請求和響應提供網絡請求嗎?
嘗試將數據包裝在方括號中: {'firstName:' ... }
過去(雖然沒有春季),我過去也遇到過類似的問題,必須將消費設置為'application/json; charset=utf-8'
控制器中的'application/json; charset=utf-8'
(盡管Intellij將其標記為不正確)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.