Javascript出于安全性考虑,是不允许跨域调用其他页面的对象的。因此也就导致了在一些ajax应用中,使用跨域的web service成为问题。
这里整理了一些方法,来解决这个问题:
1.设置document.domain。
前提条件:两个页面同属于一个基础域(例如都是xxx.com,或是xxx.com.cn);同一协议(例如都是http);同一端口(例如都是80)。
方法:设置两个页面的document.domain都设置为自己所在的基础域名。
例子:aaa.xxx.com里面的一个页面需要调用bbb.xxx.com里的一个对象,则将两个页面的document.domain都设置为xxx.com,就可以了。
2.在服务器端设置代理
跨域的请求同样发送到本地服务器端,由服务器端的代理来请求相应的数据,然后发送给浏览器端。这样实际上浏览器端的所有请求都是发到相同的域,在服务器端代理的帮助下,实现了跨域的能力。
3.使用apache服务器的mod_rewrite
http://doc.99net.net/doc/service/1076303865/1076476868.html
4.这边还有一个方法,不过我还没有测试过
http://johnvey.com/features/deliciousdirector/web-service-broker.html
分享到:
相关推荐
jquery跨域调用,js跨域调用,jsonp,跨域调用
JS调用WCF服务实例(WCF服务宿主到控制台),解决Js跨域调用问题 源码实例 wcf宿主到控制台上,并内置js调用服务的源码
使用JS调用Window服务,使用WCF技术和WebServiceHost类实现跨域调用。可以用于读取本机MAC地址、获取硬件设备信息等。
本实例是JS跨域调用webservice!
实现内嵌的iframe跨域调用父页面js方法
能够完美解决arcgis js跨域解决问题,该文档详细说明了.NET或者java环境下跨域解决
JavaScript跨域调用基于JSON的RESTful API_.docx
主要介绍了JavaScript跨域调用基于JSON的RESTful API的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
--此节点可允许脚本跨域调用webservice--> <!--此节点可允许脚本跨域调用webservice--> 步骤2. webservice代码 using System; using System.Collections.Generic; using System.L
主要介绍了json跨域调用python的方法,结合实例形式分析了基于ajax的json调用及Python后台处理技巧,具有一定参考借鉴价值,需要的朋友可以参考下
解决taro h5在调用接口时出现跨域的情况 修改config下的index.js
实现WCF同时支持SOAP和AJAX跨域调用(支持代理启动) 1、基于WCF框架对REST架构的WEB(支持SOAP)服务实现; 2、支持javascript的多种方式跨域访问(GET/POST/PUT/DELETE); 3、解决服务调用参数传递的动态设计...
常用的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. 里面两个工程。A和B。用A调用B。 放在tomcat或myeclipse中就可以跑起来。以前做建行的项目。用到的。很实用。 两个工程可以放在不同的机器上。IP也不同。相当于...
使用jquery.ajax的jsonp方法可以异域调用到百度的js并拿到返回值,当然$.getScript也可以实现跨域调用js。 ok,了解了jsonp的原理和应用后,我们看看百度的智能提示是如何做的 在chrome的调试窗口下看看百度搜索...
FlyJSONP是一个JavaScript Library用于实现跨域GET和POST请求服务,支持JSONP,并取得一个JSON响应。这个Library具有易于使用,不复杂,非常小,GZIP压缩之后只有1.13kb,并且没有依赖任何JS框架。
可是就是到了最后,将swf文件放到资源服务上后再调用时出来问题,我就想肯定又是让人蛋疼的跨域问题(CrossDomain)。后来在网上翻了半天终于把问题搞定。 首先,要让你的Flash能访问页面,你需要在<embed>标签
整理一个json格式的例子,以及php json格式与js json之间的调用(传说中的js跨域调用)