LoginController.java:При использовании @response и @request для JSON, я встречаюсь с некоторыми проблемами
@Controller
@RequestMapping("/user")
public class LoginController {
@RequestMapping(value="receive", method=RequestMethod.POST, consumes="application/json")
@ResponseBody
public RegInfo receiveData(@RequestBody RegInfo info){//
System.out.println("come here");
System.out.println(info.getRealname());
return info;
}
}
register.xml:
$("#sub").click(function(){
var m = {
"realname": $("#real_name").val(),
"phonenumber": $("#phone_number").val()
};
$.ajax({
type:"POST",
url:"/demo/user/receive",
data:m,
dataType:"json",
contentType:"application/json; charset=utf-8",
async:false,
success:function(data){
alert("nihao");
},
erroe:function(data){
alert("保存失败 ")
}
})
});
RegInfo.java:
public class RegInfo {
private String realname;
private String phonenumber;
//private boolean sex;
public RegInfo(){
}
public void setRealname(String realname){
this.realname= realname;
}
public String getRealname(){
return realname;
}
public void setPhonenumber(String phonenumber){
this.phonenumber = phonenumber;
}
public String getPhonenumber(){
return phonenumber;
}
demo-servlet.xml:
<context:component-scan base-package="com.lhao.core"/>
<!-- 默认的注解映射的支持 -->
<mvc:annotation-driven/>
<context:annotation-config/>
Я импортировал jackson-annotations-2.1.4.jar, jackson-core-2.1.4.jar, jackson-databind-2.1.4.jar в lib, но я не вижу печати в консоли, и он показывает «400 плохой запрос» в Chrome. Я пробовал несколько способов, но это не влияет.
'400 Bad Request' обычно появляется, когда Spring/jackson не может десериализовать ваш запрос данному типу. Ваша модель выглядит хорошо для меня, поэтому я сначала попытаюсь удалить параметр 'consumes' в' 'RequestMapping''. – beerbajay