0
我能够从一个自定义的Java对象没有问题返回JSONP(以下这样:http://www.concretepage.com/spring-4/spring-4-mvc-jsonp-example-with-rest-responsebody-responseentity),但是当我尝试返回一个字符串withing的JSONP包装功能消失春天 - 返回字符串或JSONObject的入JSONP
我在做什么:
@RequestMapping(value ="/book", produces = {MediaType.APPLICATION_JSON_VALUE, "application/javascript"})
public @ResponseBody ResponseEntity<String> bookInfo() {
JSONObject test = new JSONObject();
test.put("uno", "uno");
return new ResponseEntity<String>(test.toString(), HttpStatus.OK);
}
调用服务:
http://<server>:port//book?callback=test
返回:
{"uno":"uno"}
预期结果:
test({"uno":"uno"})
也试过直接返回的JSONObject ResponseEntity.accepted().body(test);
,但我得到一个406错误。有任何想法吗?
我tr ied,但是当我返回JSONObject时,响应是406错误代码 – EsteBusta
当我的类路径中没有'JsonpAdvice'类时,我得到了同样的错误。一旦我做了,我开始得到500错误,因为我没有配置Spring来序列化JSONObject。所以我转向了HashMap,它很容易转换成Json。该示例具体声明了该类型。我会更新我的答案来包含这一点。 – James
谢谢,实际上切换到HashMap是我用它的方式,我再搜索一下,并意识到JSONObject无法序列化,就像你提到的,谢谢! – EsteBusta