我正在创建如下的cookie。我知道网站A无法从网站B读取Cookie,但是我想知道插件是否可以读取Cookie?我有一个浏览器扩展程序/插件,具有最低限度的界面并提供登录功能,但是它具有转到仪表板的链接,并且我不想再次使用户登录。然后,他们将不得不再次注销。如果这不可能,我还有什么其他选择
function create_cookie(name, value, days) {
var expires;
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toGMTString();
} else {
expires = "";
}
document.cookie = encodeURIComponent(name) + "=" + encodeURIComponent(value) + expires + "; path=/";
}
通常是,取决于浏览器。无论如何,您必须始终以某些特定于浏览器的方式向用户请求权限。
例如,作为您的标签,Chrome扩展程序允许通过chrome.cookies
(Developer Chrome)访问给定来源的Cookie。您必须在扩展程序的清单中请求对cookie的访问权限以及相对来源,以使该属性实际设置并可用于某些站点。如果您不询问权限,chrome将保留该属性undefined
。
随着chrome.cookies
你必须设置好的,读,写的cookie自由出入,还可以得到扩展通知时cookie中的变化,throught的JS事件系统。
请注意,对于chrome策略,当用户安装扩展程序时,系统会通知您当前正在请求cookie的站点,清单中具有您要求的所有权限的togheter。
这也是一种良好的行为,我认为通常在您所在的国家/地区还有一项法律义务,要告知您的用户您实际上是在某些站点中存储/使用他们的cookie,以及您将如何处理它们。
如果您打算将Cookie仅仅用于存储信息,而不是用于某种形式的站点Cookie操作,通常浏览器(例如chrome)会公开其cookie localStorage/sessionStorage
,或者基于文件系统的特定扩展存储(例如chrome.storage
(Developer Chrome)),允许您在用户会话之间存储信息。这种存储是可取的,因为它会侵犯用户的隐私。
如果您想挖掘一些代码,可以在这里找到chrome实现的示例:Chrome扩展示例-Api / Cookies(GitHub)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句