如何理解javascript同源策略?
高洛峰
高洛峰 2017-04-10 14:58:17
[JavaScript讨论组]

如题,如果能通俗易懂地讲解一下更好。

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

全部回复(4)
天蓬老师

简单的说就是在同一域名下属于同源,这里的同一域名是只二级、三级、N级域名,协议,端口都一样。

http://www.f2eer.com/xxx/aaa.html 成功
http://www.f2eer.com/xxx/ccc/aaa.html 成功
https://www.f2eer.com/aaa.html 失败 协议不同
http://www.f2eer.com:81/xxx/aaa.html 失败 端口不同
http://demo.f2eer.com/xxx/aaa.html 失败 域名不同

巴扎黑

一篇 帮助我理解的博文:
http://www.cnblogs.com/twobin/p/3395086.html

巴扎黑

参考了一些资料,这里简单自己回答一下。
首先,域名同源是指协议(http/https)、主机名、端口号相同,才能叫做域名同源。
javascript同源策略的一个比较重要的限制是运用在ajax上。一个页面的js只能向域名同源的服务器发起ajax请求,比如http://a.com/index.html 上的js,就不能对http://b.com/restapi/user/info?id=1发起ajax请求。

ringa_lee

概念:同源策略是客户端脚本(尤其是Javascript)的重要的安全度量标准。它最早出自Netscape Navigator2.0,其目的是防止某个文档或脚本从多个不同源装载。

这里的同源策略指的是:协议,域名,端口相同,同源策略是一种安全协议。
指一段脚本只能读取来自同一来源的窗口和文档的属性。

为什么要有同源限制?

我们举例说明:比如一个黑客程序,他利用Iframe把真正的银行登录页面嵌到他的页面上,当你使用真实的用户名,密码登录时,他的页面就可以通过Javascript读取到你的表单中input中的内容,这样用户名,密码就轻松到手了。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号