为什么' src'属性是否允许链接到外部域的脚本,而XmlHtppRequests不是?

时间:2014-12-17 06:26:58

标签: javascript xmlhttprequest cors

我已经在StackOverflow上阅读了关于同源政策的几个答案,但我似乎没有抓住这个重要部分。

在使用src属性的所有代码中,例如<script><img>,您可以使用外部资源(来自其他域)。

为什么允许这样做,但是使用XMLHttpRequest(例如AJAX调用)则不然。我似乎并没有抓住为什么后者更危险。

我的意思是,你也可能在外部来源中有恶意代码,例如: <script src="http://example.com/malicious_script.js"></script>

1 个答案:

答案 0 :(得分:1)

同源策略旨在保护远程服务器的数据免受未知客户端的攻击,而不是保护客户端免受来自服务器的恶意代码的攻击。 <script>标记不允许客户端发出GET以外的请求,也不允许获取服务器未在有效JavaScript文件中显式公开的数据。