JQuery ajax jsonp
$.ajax({
method:"POST",
url:"http://localhost:8081/ChenLei/PeopleServlet",
data:{"userName":"zhangsan"},
dataType:"jsonp",
jsonpCallback:"callback", //jsonpCallback是实现跨域请求的时候定义回调函数用的 ,可以随意起名字
success:function(data){
alert(data.code);
alert(data.message);
},
error:function(data){
},
complete:function(){
}
})
后台如果是servlet
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println(request.getParameter("userName")); String callback = request.getParameter("callback"); response.getWriter().print(callback+"({"code":"200","message":"success!!"})");
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response);
}
如果是Springmvc
import com.fasterxml.jackson.databind.util.JSONPObject;
@RequestMapping(value = "/chenlei/test/getuser", method = {RequestMethod.GET,RequestMethod.POST}) @ResponseBody public JSONPObject getUser(@RequestParam String userName, @RequestParam String callback){ Map<String, String> map = new HashMap<String, String>(); map.put("code", "200"); map.put("message", "success!!"); return new JSONPObject(callback, map);
}