我的 spring3.1 mvc 服务器可以通过 add 响应正确的 json 结果@ResponseBody
,在 spring 设置文件上应该没有问题。包含的 servlet.xml
<mvc:annotation-driven/>
我把杰克逊罐子放在类路径中。
而且我的 html 文件还在 .ajaxSetup() 方法中将 contentType 设置为“application/json”。我可以看到帖子标题在 Firebug 中是正确的。
我还尝试包含 json2.js 来调用 JSON.stringify 方法。
json格式示例:
{"link":"http:xxxxx","ticker":"xxxxx"}
responseBody 类是 Document:
public class Document implements Serializable{
public String getLink(){...}
public String setLink(String link){...}
public String getTicker(){...}
public String setTicker(String ticker){...}
}
控制器代码:
public class LoadFile {
@RequestMapping(value="/loadFile",method=RequestMethod.POST)
public @ResponseBody Document loadFile(@RequestBody Document document){
...
}
}
html代码:
$(function() {
$.ajaxSetup({
contentType:"application/json;charset=utf-8"
});
$.post( url, { link: link, ticker:ticker },
function( data ) {
....
},"json"
);
}
Document 类在添加时可以作为 json 对象返回@ResponseBody
,但作为 a 时@RequestBody
,服务器返回 400 错误。不知道会发生什么。