Javascript HTML5本地存储数据是否按域分开存储
我试着四处看看HTML5本地存储,但似乎找不到一个直接的答案 本地存储是否基于类似于域的cookie存储其对象 如果是,如何从其他域访问它?从: 当Javascript HTML5本地存储数据是否按域分开存储,javascript,html,local-storage,Javascript,Html,Local Storage,我试着四处看看HTML5本地存储,但似乎找不到一个直接的答案 本地存储是否基于类似于域的cookie存储其对象 如果是,如何从其他域访问它?从: 当localStorage属性最初返回的Storage对象的任何成员被脚本访问时,用户代理必须抛出SecurityError异常,这些脚本的有效脚本源与窗口的文档的源不相同localStorage属性已被访问 您不能从存储数据的域以外的任何域访问存储在localStorage中的数据。它遵循与XMLHttpRequest相同的模型——“同源策略” 如果
localStorage
属性最初返回的Storage
对象的任何成员被脚本访问时,用户代理必须抛出SecurityError
异常,这些脚本的有效脚本源与窗口的文档的源不相同localStorage
属性已被访问
您不能从存储数据的域以外的任何域访问存储在localStorage
中的数据。它遵循与XMLHttpRequest
相同的模型——“同源策略”
如果是,我如何从另一个域访问它
你不能
LocalStorage数据是基于网页的域创建的。然后,只能从同一域下的网页访问这些数据
这就是为什么这是一个好主意:
你希望像hackerz.pwn这样的网站能够读/写/删除这个吗
Example (page on www.yourbank.com):
window.localStorage.setItem("user_session", "1234567");
注意:域名!==起源,起源是基于域的。@Alnitak-是的,但OP专门询问来自另一个域的访问。是的,但从纯DNS的角度来看,一个域的不同子域仍然是不同的域,即使它们可能具有相同的起源。这就是我所想的,我认为这将是一个巨大的安全漏洞。奇怪的是,StackOverflow是如何使用localstorage处理全局身份验证的,他们声明它存储在stackauth.com域下。