переменная не распознана внутри содержимого - PullRequest
1 голос
/ 10 декабря 2011

Я пытаюсь создать аддон, который после входа пользователя на мой сайт, я попытаюсь прочитать идентификатор сеанса этого домена и использовать его для дальнейшего взаимодействия с моим аддоном.Я использую онлайн-конструктор аддонов , и у меня есть этот код, который я хочу прочитать куки:

var data = require("self").data;
var {Cc, Ci} = require("chrome");
var cookieMgr = Cc["@mozilla.org/cookiemanager;1"].getService(Ci.nsICookieManager); 
var cm = require("context-menu");
cm.Item({
  label: "My Menu Item",
  contentScript: 'self.on("click", function (node, data) {' +
                 'for (var e = cookieMgr.enumerator; e.hasMoreElements();) {  ' +
                 'var cookie = e.getNext().QueryInterface(Ci.nsICookie);   ' +
                 ' console.log(cookie.host + ";" + cookie.name + "=" + cookie.value + "\\n");'+
                 '}});'
});

, но он выдает ошибку каждый раз, когда я нажимаю «Мой пункт меню»Кнопка, говоря cookieMgr, переменная не определена.

1 Ответ

0 голосов
/ 10 декабря 2011

Контекст скрипта контента полностью отключен от контекста скрипта аддона.Это не так легко понять, когда вы используете contentScript, но если вы поместите его в другой файл и используете его через contentScriptFile, это станет более очевидным.Сценарии содержимого запускаются в контексте документа, а сценарии добавления - нет.

...