前台往后台传送JSON格式的字符串为什么JAVA后台接收的时候总报错!

错误内容详细信息org.springframework.web.HttpMediaTypeNotSupportedException:Contenttype'applic... 错误内容详细信息
org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'application/json;charset=UTF-8' not supported

前台代码JQUERY部分:
var requestUrl = "json/testRequestBody";

$.ajax(

{
url : requestUrl,
dataType : "json" ,//预期服务器返回的数据类型
type : "post",//请求方式POST 或 GET
contentType:"application/json;charset=UTF-8" , //发送至服务器时的内容编码格式
//发送到服务器的数据
data:JSON.stringify({id:1,loginname:"njxiaoxiao79",password:"123456"}),
async:true,//默认设置下,所有请求均为异步请求。如果设置为false,则发送同步请求。
//请求成功后的回调函数
success : function(data){
console.log(data);
$("#id").html(data.id);
$("#name").html(data.name);
$("#age").html(data.age);
} ,
//请求出错时调用的函数
error : function(){
alert("数据发送失败!");
}

});
后台处理接收数据的方法如下:
//@requestBody根据JSON数据转换成对应的Object
@RequestMapping(value="/testRequestBody",
method=RequestMethod.POST,
consumes="application/json",
produces="application/json")
public void setJson(@RequestBody People people,
HttpServletResponse response){

ObjectMapper mapper = new ObjectMapper();

跟踪到JAR包中出现错误的类AbstractMessageConverterMethodArgumentResolver出错代码如下:
if (body == NO_VALUE) {
if (!SUPPORTED_METHODS.contains(httpMethod)) {
return null;
}
throw new HttpMediaTypeNotSupportedException(contentType, this.allSupportedMediaTypes);
}
展开
 我来答 举报
梦尽落花3
2017-03-18
知道答主
回答量:12
采纳率:0%
帮助的人:4.8万
展开全部
consumes="application/json",produces="application/json"删掉试试,
我的后台工程是这样子:
@RequestMapping(value = "/updateByChaIdSelective", method = RequestMethod.POST)
public @ResponseBody
ServerResponse<Object> updateByChaIdSelective(
@RequestBody JJctbCha record) throws Exception {
....
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式