Ajax跨子域
主页index.html的主要代码如下:
< button onclick="crossDomain();">开始跨域</ button > < div id="ajax"></ div > < iframe src="http://work.2fool.cn/crossdomain/iframe.html" id="iframe" style="display:none;"> </ iframe > < script type="text/javascript"> document.domain = '2fool.cn'; function crossDomain(){ var iframe=document.getElementById('iframe').contentWindow.$; iframe.get("http://work.2fool.cn/crossdomain/helloworld.txt",function(data){ document.getElementById("ajax").innerHTML=data; }); } </ script > |
iframe页面主要代码如下:
< script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></ script > < script type="text/javascript"> document.domain = '2fool.cn'; </ script > |
原理:通过给主页面跟请求页面设置相同的document.domain来,欺骗浏览器,达到Ajax跨子域的效果,此方法在IE,chrome,Firefox,Safari,Opera下测试通过。
缺点:无法实现不同主域名之间的通讯。并且当在一个页面中还包含有其它的iframe时,会产生安全性异常,拒绝访问。
关注下面二维码,订阅更多精彩内容。

【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 实操Deepseek接入个人知识库
· 易语言 —— 开山篇
· Trae初体验