跨域的N种形式:
1.直接用jquery中$.getJSON进行跨域提交
优点:有返回值,可直接跨域;
缺点:数据量小;
提交方式:仅get (无$.postJSON)
[javascript] view plaincopy
01. $.getJSON("http://www.sendnet.cn/?callback=?" , { UserId: 1001 },
02.nction (data) {
03.alert(data.info);
04.;
[javascript] view plaincopy
01.$.ajax({
02. type: "Get",
03. url: "http://www.sendnet.cn/?UserId=1001",
04. cache: false,
05. error: function () { },
06. jsonp: "callback",
07. dataType: "jsonp",
08. success: function (result) {
09. alert(result.info);
10. }
11. });
2.在页面中嵌入一个iframe,把iframe的宽和高设置为0进行跨域提交
优点:可直接跨域;
缺点:无返回值(脱离ajax本质);
提交方式:get/post
[plain] view plaincopy
01.使用隐藏的iframe来提交表单
02.1,在页面中嵌入一个iframe,把iframe的宽和高设置为0
03.2.在iframe的里面里设置一个from的表单,表单的内容就是真正要提交的表单内容。
04.3.当点击按钮的时候是iframe里的表单提交。
05.
06.
07.<form id="form2" name="form2" method="post" action="a,jsp" enctype="multipart/form-data">
08. <input name="option_13412" id="option_13412" type="text"/>
09. <input name="option_13413" id="option_13413" type="text"/>
10. <input name="option_13414" id="option_13414" type="text"/>
11. <input name="option_13415" id="option_13415" type="text"/>
12.</form>
13.
14.使用jquery来啊操作iframe中的表单元素
15.$(window.frames["iframe1"].document).find("#option_13412").val(name);
16.$(window.frames["iframe1"].document).find("#option_13413").val(phone);
17.$(window.frames["iframe1"].document).find("#option_13415").val(content);
18.
19.通过按钮来提交iframe里的表单
20.$(window.frames["iframe1"].document).find("#form2").submit();
3.直接用$.post跨域,先提交到本地域名下一个代理程序,通过代理程序向目的域名进行post或get提交,并根据目的域名的返回值通过代理 程序返回给本地页面
优点:有返回值,可直接跨域,可通过 代理程序 统计ip等用户信息,增加安全性;
提交方式:get/post
复杂度:需要前端工程师和后端工程师配合(php/java../工程师)
缺点:需要消耗本地服务器资源,增加ajax等待时间(可忽略)
4.向百度学习的思路:由于调用任何js文件不涉及跨域问题,所以js脚本中可以编写调用远程服务器上的js文件,该文件实现你需要的业务。
即a.js动态调用www.baidu.com/b.js ,其中b.js实现业务
5.待研究…………
分享到:
相关推荐
解决JQurey跨域问题$.get|$.post|$.getJSON等等统统可跨域
使用jQuery的$.post方法可以以POST形式向服务器发起AJAX请求.本篇文章主要给大家讲解jquery中AJAX请求 $.post方法的使用,需要的朋友可以参考下
$(function(){ $.getJSON(url,function(data){ alert (data.Name); }) }); 服务器返回字符串: {“Name”:”loogn”,”Age”:23} 2,不同域名下 js: 代码如下: var url=”...
path : $.contextPath+"/i18n/"+i18nLanguage+"/", //资源文件路径 mode : 'map', //用Map的方式使用资源文件中的值 language : i18nLanguage, cache:false, //指定浏览器是否对资源文件进行缓存,默认false ...
主要介绍了JQuery用$.ajax或$.getJSON跨域获取JSON数据的实现代码,需要的朋友可以参考下
利用JQuery jsonp实现Ajax跨域请求 .Net 的*.handler 和 WebService,返回json数据
利用jquery技术和url传参,实现tomcat网页和Webstorm网页之间实现跨域数据传输
$.ajax({ url: "http://127.0.0.1/~chenjiebin/mycode/php/crossdomain/index.php", dataType: "jsonp", jsonp: "callback", context: document.body, success: function(data) { console.log(data); } }); ...
跨域 跨域有三个条件,满足任何一个条件就是跨域 1:服务器端口不一致 2:协议不一致 3:域名不一致 解决方案: 1.jsonp 在远程服务器上设法动态的把数据装进js格式的文本代码段中,供客户端调用和进一步...
本文实例讲述了jQuery使用JSONP实现跨域获取数据的三种方法。分享给大家供大家参考,具体如下: 第一种方法是在ajax函数中设置dataType为’jsonp’ $.ajax({ dataType: 'jsonp', url: '...
NULL 博文链接:https://chun521521.iteye.com/blog/1935516
跨域,前端开发中经常遇到的问题,AngularJS实现跨域方式类似于Ajax,使用CORS机制。 下面阐述一下AngularJS中使用$http实现跨域请求数据。 AngularJS XMLHttpRequest:$http用于读取远程服务器的数据 $http.post...
asp.net jquery 跨域提交请求数据
基于pdf.js 2.9.8版本修改,去掉跨域限制,解决某些中文字体显示乱码的情况
ajax 跨域 jsonp等方式
ajax跨域问题的解决办法
集成war包,跨域脚本,支持post方式提交大数据 提高跨域数据交互的安全性
代码如下: $.ajax( { type: “POST”, url: “/MemberComment.aspx/GetOrderToBeCommentCount”, success: function(result) { //ToDo: } ) 使用时JS也没有报错。这个是我最郁闷的事了。不知道哪错。。 5分钟。。。...