我使用arantius.com/misc/greasemonkey/script-compiler中的Greasemonkey脚本编译器创建了一个Firefox插件。插件从我的服务器获取数据并将其显示在第三方网站上。现在,我想仅限制对经过身份验证的用户的访问。这样做的最佳方式是什么?
用户在我的网站上有一个帐户(使用Drupal 7制作),它在登录时设置会话cookie。所以我试着让我的插件读取session-cookie,发送到后端,然后检查登录状态。
但由于我的插件的javascript运行在第三方网站的范围内,因此不允许访问我的cookie。我收到这个错误:
错误:< http://de.wikipedia.org> wurde ErlaubnisfürdasLesen der Eigenschaft XPCComponents.classes verweigert。
(en:“错误:维基百科 不允许阅读该物业 XPCComponents.classes“)
尽管存在安全问题,我还是尝试使用unsafeWindow,但代码仍然失败:
try {
unsafeWindow.netscape.security.PrivilegeManager
.enablePrivilege('UniversalXPConnect');
var cookieMgr = Components.classes["@mozilla.org/cookiemanager;1"]
.getService(Components.interfaces.nsICookieManager);
}
catch (errorInfo)
{
alert(errorInfo);
}
我现在知道跨域cookie不可能。但是我怎么能解决这个问题呢?其他插件如何进行身份验证(例如Delicious Bookmarks,StumbleUpon等等)。
非常感谢任何提示或指示。