ajax jsonp 跨域请求访问实例

来源:互联网 发布:php项目管理系统 编辑:程序博客网 时间:2024/05/06 13:24

何为跨域,浏览器同源策略,凡是发送请求url的协议、域名、端口三者之间任意一与当前页面地址不同即为跨域。

跨域请求在很多地方用到,但是浏览器常常是阻止访问,为了解决这个问题,查询一些资料,实现了其功能。

采用如下方法,ajax jsonp请求:

客户端:

function requestMethed()var the_url = "http://www.***.com/controller/todo.do";var data = { name :name,password :password};$.ajax({type : "post",url : the_url,dataType : "jsonp",data : data,jsonp: "callback",jsonpCallback:"success_jsonpCallback",success : function(data){if(data.result == 1){alert("成功!");}else{alert("数据错误");}},error : function(){alert("-- fail --");}});}})}

服务端:

@RequestMapping("todo.do")public void todo(HttpServletRequest request,HttpServletResponse response) throws IOException{String callback = request.getParameter("callback");String jsonData = "{\"result\":\"1\"}";String name = request.getParameter("name");String password = request.getParameter("password");if("".equals(name) || "".equals(password)){jsonData = "{\"result\":\"-1\"}";}                //TODO something                String retStr = callback + "(" + jsonData + ")";                response.getWriter().print(retStr);}




0 0
原创粉丝点击