JQueryAjax+SpringMVC简单跨域请求

注:以下内容对get有效,post不知道怎么弄,欢迎大家补充
页面端写为:
var api = "http://192.168.2.139/WebTest/api/search/getProjectStatusList";
$.ajax(
{
url : api,
async: false,
dataType : 'json',
data:"callback=?",
type:'GET',
success : function(json){
    //TODO
},
error : function(XMLHttpRequest,textStatus,errorThrown) {
    //TODO
}
}
);

后端写为:
	@RequestMapping(method=RequestMethod.GET,value="getProjectStatusList",produces="text/html;charset=UTF-8")
	@ResponseBody
	public String getProjectStatusList(HttpServletRequest request, 
									 HttpServletResponse response){
		
		
		Map<String,Object> map = new HashMap<String,Object>();
		try{
			String callback = request.getParameter("callback");
			//System.out.println("token:"+request.getHeader("token"));
			List<String> list = ss.getProjectStatusList();
			map.put("status", "success");
			map.put("data", list);
			ObjectMapper mapper = new ObjectMapper();
			//这个拼接是重点。。。
      String result = callback+"("+mapper.writeValueAsString(map)+")";
			//String result = mapper.writeValueAsString(map);
			return result;
		}catch(Exception e){
			JSONObject jo = new JSONObject();
			jo.put("status", "fail");
			jo.put("data", e.getMessage());
			return jo.toString();
		}
	}

你可能感兴趣的:(java,跨域,jquery,Ajax,springMVC)