Cookies 使用Firefox插件内容脚本访问Cookie?

Cookies 使用Firefox插件内容脚本访问Cookie?,cookies,sdk,google-chrome-extension,firefox-addon,firefox-addon-sdk,Cookies,Sdk,Google Chrome Extension,Firefox Addon,Firefox Addon Sdk,我正在尝试从别人创建的Chrome中翻译一个插件。它有一个包含chrome.cookies.get的内容脚本。我找不到合适的方法来修复Firefox。是否有任何方法可以从插件sdk中的内容脚本访问cookie 以下是原始代码: function getCookies(domain, name, callback) { chrome.cookies.get({"url": domain, "name": name}, function(cookie) {

我正在尝试从别人创建的Chrome中翻译一个插件。它有一个包含chrome.cookies.get的内容脚本。我找不到合适的方法来修复Firefox。是否有任何方法可以从插件sdk中的内容脚本访问cookie

以下是原始代码:

function getCookies(domain, name, callback) {
    chrome.cookies.get({"url": domain, "name": name},
        function(cookie) {
            if (callback) {
                if (cookie) {
                        callback(cookie.value);
                } else {
                    callback(null);
                }
            }
        }
    );
}

内容脚本没有使用任何高级API所需的特权,无论是在Firefox还是在Chrome中。但是,它可以通过获取当前页面的cookies。同样的限制也适用于网页本身-HTTPOnly cookies将不可见


但是,在扩展模块中,您可以使用访问cookie。有关详细信息,请参阅。如果您想从内容脚本中获取该信息,则必须从内容脚本向扩展发送消息,使扩展为您检索该信息。

内容脚本没有使用任何高级API所需的权限-无论是在Firefox中还是在Chrome中。但是,它可以通过获取当前页面的cookies。同样的限制也适用于网页本身-HTTPOnly cookies将不可见

但是,在扩展模块中,您可以使用访问cookie。有关详细信息,请参阅。如果您希望从内容脚本中获取该信息,则必须从内容脚本向扩展发送一条消息,使扩展为您检索该信息。

我完全被nsICookieManager搞糊涂了。我只想从另一个域检索和设置cookie。我可以使用nsICookieManager更改现有cookie吗?唯一可能的选择是添加。这会取代已经存在的cookie吗?抱歉,如果我听起来真的很笨,我以前从未使用过cookie,而且MDN非常缺乏示例。@Ian:是的,你调用add来覆盖cookie。这些方法是由HTTP协议实现调用的,并且在HTTP中隐式覆盖cookies。我完全被nsICookieManager搞糊涂了。我只想从另一个域检索和设置cookie。我可以使用nsICookieManager更改现有cookie吗?唯一可能的选择是添加。这会取代已经存在的cookie吗?抱歉,如果我听起来真的很笨,我以前从未使用过cookie,而且MDN非常缺乏示例。@Ian:是的,你调用add来覆盖cookie。这些方法将由HTTP协议实现调用,并且在HTTP中隐式覆盖cookie。