两个不同的域名的localStorage不能直接互相访问。那么如何在domain2.com中如何调用domain1.com的localStorage?
第一种
在domain2.com的页面中,嵌入一个src为domain1.com的iframe,此时这个iframe里可以调用domain1.com的localstorage。用postMessage方法实现页面与iframe之间的通信。
我们可以优化下iframe,我们可以在domain1.com中专门写一个负责共享localstorage的页面,这样可以防止无用的资源加载到iframe中。
第二种
利用cookie设置9999天的过期时间来实现,并且设置domain为同一站点。
$.cookie('historyArr', historyArr, {
expires: 9999,
path: '/',
domain: 'XXX.com'
});
不过cookie这种方法会有不足,因为cookie机制的问题,有些http请求会携带本地cookie。
参考文章:http://server.ctocio.com.cn/server/2020/0204/7576.html