九种跨域方式实现原理(完整版) (5)

我们看个例子:页面a.zf1.cn:3000/a.html获取页面b.zf1.cn:3000/b.html中a的值

// a.html <body> helloa <iframe src="http://b.zf1.cn:3000/b.html" frameborder="0"></iframe> <script> document.domain = \'zf1.cn\' function load() { console.log(frame.contentWindow.a); } </script> </body> // b.html <body> hellob <script> document.domain = \'zf1.cn\' var a = 100; </script> </body> 三、总结

CORS支持所有类型的HTTP请求,是跨域HTTP请求的根本解决方案

JSONP只支持GET请求,JSONP的优势在于支持老式浏览器,以及可以向不支持CORS的网站请求数据。

不管是Node中间件代理还是nginx反向代理,主要是通过同源策略对服务器不加限制。

日常工作中,用得比较多的跨域方案是cors和nginx反向代理

参考文章

跨域资源共享 CORS 详解

前端面试之道

window.postMessage

前端常见跨域解决方案(全)

深入跨域问题(4) - 利用代理解决跨域

关于Fundebug

Fundebug专注于JavaScript、微信小程序、微信小游戏、支付宝小程序、React Native、Node.js和Java线上应用实时BUG监控。 自从2016年双十一正式上线,Fundebug累计处理了9亿+错误事件,付费客户有Google、360、金山软件、百姓网等众多品牌企业。欢迎大家免费试用!

九种跨域方式实现原理(完整版)

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zgdzgj.html