如果a.com将b.com/b.js作为外部来源加载。什么是域名 在j.js内? a.com,b.com或两者兼而有之?
答案 0 :(得分:1)
example.com可以从任何域加载任何资源,但代码仍然具有same origin policy,因此它只能与example.com通信。您没有通过加载获得特殊权利 来自其他领域。
想象一下,如果链接到文件会突然允许跨域通话。如果是这种情况,任何站点都可以链接到银行,电子邮件提供商等的JS文件,并能够在幕后进行Ajax调用。不好!
从另一个域加载内容的一个重要原因是不发送cookie,这意味着更小的有效负载。此外,如果您从CDN加载,人们可能已经将文件放在浏览器的缓存中,因此没有下载时间!
答案 1 :(得分:1)
JavaScript在客户端运行。如果查看window.location
,它将会看到当前网站 - 如果不是这样的话,我们所有来自CDN的JS都会指向CDN:)