1 / 3
文档名称:

跨域访问问题解决方法.docx

格式:docx   大小:17KB   页数:3页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

跨域访问问题解决方法.docx

上传人:wz_198613 2019/1/12 文件大小:17 KB

下载得到文件列表

跨域访问问题解决方法.docx

文档介绍

文档介绍:js跨域访问问题解决方法什么引起了ajax不能跨域请求的问题?ajax本身实际上是通过XMLHttpRequest对象来进行数据的交互,而浏览器出于安全考虑,不允许js代码进行跨域操作,所以会警告。有什么完美的解决方案么?解决方案有不少,但是只能是根据自己的实际情况来选择。跨域的安全限制都是指浏览器端来说的,服务器端是不存在跨域安全限制的。所以针对这2种情况衍生出2类跨域解决方案,一类是服务器端做中转类似代理方式,一类是js处理浏览器端的真正跨域访问。具体情况有:本域和子域的相互访问:="";本域和其他域的相互访问:.用XMLHttpRequest访问代理,既服务器端代理方式本域和其他域的相互访问:.用JS创建动态脚本,<script>标签的src属性实现跨域访问解决方法:如果想做到数据的交互,。,="",这样就可以统一域了,可以实现跨域访问。就和平时同一个域中镶嵌iframe一样,直接调用里面的JS就可以了。这种情形是最经常遇到的,也是用的最多的了。,也就是另外一个是别人的,人家告诉你你要取得数据就访问某某连接参数是什么样子的,最后返回数据是什么格式的。而你需要做的就是让你的服务器端充当中转代理,让服务器去别人的网站上取得数据,再返回给浏览器端。服务器端充当中转代理方式有很多可以由服务器端程序实现,也可以修改服务器配置实现,下面举例Apache重写(mod_rewriteproxy模式)方式:在Apache的安装目录下的conf/:LoadModuleproxy_modulemodules//^/_proxy/(.*)$http://$1[P,L]这样就可以把其他网站的url映射为本服务器的/_proxy/目录下面,例如可以这么访问百度http://html./_proxy/别就是请求是使用<script>标签来请求的,这个要求也是两个域都是由你来开发才行。原理就是JS文件注入,内生成一个JS标签,的某个页面b,b返回数据即可,可以直接返回JS的代码。因为script的src属性是可以跨域的。具体看代码,这个也比较简单。/:<scripttype="text/javascript">functionmyTest(data){alert(data);}</script><scripttype="text/javascript"src="ex!?jsoncallback=myTest"></script>/:$()({"name":"ZhangHuihua","QQ":"350863780"})$()得到浏览器端随后要回调的