问题描述:
采用Spring Restful ,可以通过浏览器的地址栏URL正确访问后台且不报错误,但是前台总是获取不到数据,前台也是收到了后台的响应,就是没有数据。
具体如下:
采用 Spring Restful 对不同的格式,可以发送不同格式化的数据,比如Json、XML、HTML.....
对于配置文件如下:
参考 Spring MVC Rest 学习 一:http://my.oschina.net/heweipo/blog/337581
参考Spring MVC Rest 学习 二:http://my.oschina.net/heweipo/blog/340040
对于Controller的接口,一开始如下声明:
@RequestMapping("/getMessage")
public String getMessage(HttpServletRequest request , HttpServletResponse response , ModelMap model){
model.put("message",new Message());
return null;
}
在浏览器中请求,http:ip:port/server/uri/getMessage.json
结果是:这个方法可以访问到,因为我用断点试过了,但是返回值却是空的,本来理想的结果应该是返回一个Json格式的Message内容,然而却差强人意。具体原因不是很清楚,不过如下修改之后问题得到解决:
@RequestMapping("/getMessage")
public String getMessage(HttpServletRequest request, ModelMap model){
model.put("message",new Message());
return null;
}
总结:
前后接口对比,发现就是多了一个 HttpServletResponse response 形参,结果却差强人意,不过问题总算解决了。
另外我也没有用@ResponsBody测试过,理论上来说应该也是可以的。
来源:oschina
链接:https://my.oschina.net/u/1989321/blog/387411