JavaScript新手求助:如何访问当前未访问URL的localStorage?
问题解答
不行,你没法在当前的https://www.youtube.com/页面里通过JavaScript直接访问https://accounts.youtube.com/的localStorage,这是浏览器核心安全规则「同源策略」的限制。
关键概念说明
- 浏览器的
localStorage严格遵循同源规则:只有协议、域名、端口完全一致的页面,才能共享同一份localStorage。youtube.com和accounts.youtube.com是两个不同的二级域名,属于不同的源,所以它们的存储完全隔离,互相不能直接访问。 - 你在开发者工具里能看到两个源的
localStorage,是浏览器给调试者开放的特权,不属于前端JavaScript的运行权限范畴——JS代码只能访问当前页面所在源的存储。
补充说明
当你在youtube.com页面执行localStorage["foo"]时,只会读取当前源的存储,这是正常的安全行为,目的是防止恶意网站窃取其他站点的用户敏感数据。
内容的提问来源于stack exchange,提问作者Vindicated
相关产品推荐
相关产品推荐

