跨域是什么:跨域说白就是一个web项目访问另一个web项目,前提是域名或者端口号不同.
第一个:使用jackson
@RequestMapping(value="/itemcat/all")
@ResponseBodypublic JSONPObject getItemcatResult(String callback){
System.out.println(callback);
ItemcatResult itemcatResult = itemcatNode.getItemcatResult();
JSONPObject jsonp=new JSONPObject(callback, itemcatResult);
return jsonp;
}
第二个: 返回String json 字符为utf-8 不加 下面红色覆盖的语句返回的是乱码 ,
@RequestMapping(value="/itemcat/all",produces=MediaType.APPLICATION_JSON_UTF8_VALUE)@ResponseBody
public String getItemcatResult(String callback){
System.out.println(callback);
ItemcatResult itemcatResult = itemcatNode.getItemcatResult();
String json=JsonUtils.objectToJson(itemcatResult);
String call=callback+"("+json+")";
return call;
}
第三个: 使用Spring 提供的
@RequestMapping(value="/itemcat/all")@ResponseBody
public MappingJacksonValue getItemcatResult1(String callback){
System.out.println(callback);
ItemcatResult itemcatResult = itemcatNode.getItemcatResult();
MappingJacksonValue jack=new MappingJacksonValue(itemcatResult);
jack.setJsonpFunction(callback);
return jack;
}