前台ajax提交一个请求,spring mvc中用注解@ResponseBody与response.getWriter .write()有什么区别呢?当前项目网页版用@ResponseBody没问题,但是wap的用@Response的就报异常org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation,而用response.getWriter .write()就没问题。那个方法网页版用着没问题,浏览器直接调用也没问题,但是移动端调用就走到异常了,改用response.getWrite.write()就好了。这是前端的请求,
是返回的string格式的json串,用的alibaba的fastjson。public static String createOKMsg(Object ro) {
ReturnMsg okMsg = new ReturnMsg();
okMsg.setCode(Constant.CORRECT_CODE);
okMsg.setContent(ro);
return JSONObject.toJSONString(okMsg, SerializerFeature.WriteMapNullValue);
}前端用的是zepto.js
在springmvc中返回值是String时,如果你不加@ResponseBody的话你返回的字符串就会找这个想对应的页面,如果找不到应该会报404错误,如果加上这个注解的话,返回的就是json字符串,还是返回你请求过来的页面。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。