最近在项目中面临 ajax 跨域请求问题。
和同事讨论半天,网上查贴一二,附上解决方案
<script>
$(document).ready(
function(){
$("#testBtn").bind("click",loginFun);
//$("#loginBtn").bind("click",loginFun);
//$("#setLoginBtn").bind("click",setLoginPas);
}
)
function loginFun(){
alert(111)
$.ajax({
type:'get',
url:'http://127.0.0.1:8080/ttc/twoDimensionalCodeAction/testAjaxCrossDomain.htm',
beforeSend: function(XMLHttpRequest) {
},
data:"lokey=7758521",
dataType:'jsonp',
jsonp: 'jsoncallback',
success:function(data){
alert(data.keyAlive);
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
alert(errorThrown);
}
})
}
</script>
服务器端代码:
public void testAjaxCrossDomain(HttpServletRequest request,
HttpServletResponse response) throws Exception{
System.out.println("接收跨域请求");
String loKey = RequestGetString.getString(request, "lokey");
System.out.println("loKey:"+loKey);
String jsoncallback = RequestGetString.getString(request, "jsoncallback");
PrintWriter out = null;
out = response.getWriter();
JSONObject json = new JSONObject();
Random rand = new Random();
int i = rand.nextInt(100);
StringBuffer abc = new StringBuffer("0123456789");
for(int j = 0;j<100000;j++){
abc.append("0123456789").append("-").append(j).append("-").append("\n");
}
json.put("keyAlive", Integer.toString(i)+" "+loKey+" "+abc.toString());
out.print(jsoncallback+"("+json+")");
}
分享到:
相关推荐
利用JQuery jsonp实现Ajax跨域请求 .Net 的*.handler 和 WebService,返回json数据
基于jQuery的jsonp ajax跨域请求,
ajax跨域请求,jquery.jsonp插件
今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发 JQuery对于Ajax的跨域请求有两类解决...
本文将给您介绍如何使用getJSON来实现异步跨域提交表单
dataType:”json”, } 不能用jsonp 因为jsonp发送数据 type 为 ... 您可能感兴趣的文章:跨域请求之jQuery的ajax jsonp的使用解惑AJAX跨域请求json数据的实现方法jQuery.ajax 跨域请求webapi设置headers的解决方案JQuer
今天在项目中需要做远程数据加载并渲染页面,直到开发阶段才意识到ajax跨域请求的问题,隐约记得Jquery有提过一个ajax跨域请求的解决方式,于是即刻翻出Jquery的API出来研究,发 JQuery对于Ajax的跨域请求有两类解决...
主要从三方面来通过jsonp来实现ajax跨域问题: 1.javascript方法 2.jquery $.ajax方法 3.jquery $.getJSON方法 不看会后悔的!
常用的jquery实现跨域调用 $.ajax({ url: "http://127.0.0.1/~chenjiebin/mycode/php/crossdomain/index.php", dataType: "jsonp", jsonp: "callback", context: document.body, success: function(data) { ...
实现方法有多种,本例采用jQuery+Ajax,完成后,在本地调试了一切ok,但是部署到服务器上以后就出现问题了,后台服务调用没有响应,怎么回事?代码没怎么改动,唯一修改的地方就是jQuery的ajax方法中的url地址。难道...
我们都知道,AJAX的一大限制是不允许跨域请求。 不过通过使用JSONP来实现。JSONP是一种通过脚本标记注入的方式,它是可以引用跨域URL的js脚本,不过需要提供一个回调函数(必须在您自己的页面上),因此,你可以自己...
直接执行了error方法提示错误——ajax jsonp之前并没有用过,对其的理解为跟普通的ajax请求差不多,没有深入了解;出现了这种错误,几经调试(检查后台的代码和js部分的属性设置)还是不行,让我感觉很是意外和不解。...
了解了jsonp之后,大家应该也都明白了,jsonp主要就是用来实现跨域的获取数据,今天我们就来详细探讨下如何在实际中应用jsonp实现跨域
本文实例讲述了jquery+ajax实现跨域请求的方法。分享给大家供大家参考。具体实现方法如下: 说明:这里的dataType 为 “jsonp” ;type 只能为 GET 前台请求代码如下: 代码如下:$.ajax({ type: “GET”, url...
跨域是我在日常面试中经常会问到的问题,这词在前端界出现的频率不低,主要原因还是由于安全限制(同源策略, 即JavaScript或Cookie只能访问同域下的内容),因为我们在日常的项目开发时会不可避免的需要进行跨域操作...
本文给大家汇总介绍了JavaScript的AJax,JQuery的AJax以及利用jsonp实现跨域访问的问题,非常的细致全面,有需要的小伙伴可以参考下。
1、一个众所周知的问题,Ajax直接请求普通文件存在跨域无权限访问的问题,甭管你是静态页面、动态网页、web服务、WCF,只要是跨域请求,一律不准; 2、不过我们又发现,Web页面上调用js文件时则不受是否跨域的影响...
由于JS同源策略的影响,因此js只能访问同域名下的文档。因此要实现跨域,一般有以下几个方法: 一、处理跨域的方式: 1.代理 2.XHR2 HTML5中提供的... ajax本身是不可以跨域的, 通过产生一个script标签来实