Полезная информация

Будьте в курсе последних изменений в мире Mozilla, следя за нашим микроблогом в Twitter.

№127-11-2006 16:14:38

Zugr
Участник
 
Группа: Members
Зарегистрирован: 31-10-2006
Сообщений: 4

Вопрос: Как восстановить ccokies-ы?

В процессе работы XUL скрипта создаются/удаляются cookies-ы, надо по нажатии на определённую кнопочку восстанавливать всё как было.
Пробывал так:

Выделить код

Код:

var CC = Components.classes;
var CI = Components.interfaces;
var gCookies;

function LoadCookies()
{
	dump("LoadCookies()\n");
	gCookies = new Array();
	var contanerCookies = CC["@mozilla.org/cookiemanager;1"].getService(CI.nsICookieManager).enumerator;
	while (contanerCookies.hasMoreElements())
		gCookies[gCookies.length] = contanerCookies.getNext();
	dump("\tgCookies.length :"+gCookies.length+"\n");
}
LoadCookies();

// Функция обработки события в <button label="Restore cookies" oncommand="onRestoreCookies(event);"/>
function onRestoreCookies(e)
{
	dump("onRestoreCookies()\n");
	dump("\tgCookies.length :"+gCookies.length+"\n");
	CC["@mozilla.org/cookiemanager;1"].getService(CI.nsICookieManager).removeAll();
	var cm=CC["@mozilla.org/cookiemanager;1"].getService(CI.nsICookieManager2);
	for (var refCook in gCookies)
		cm.add(refCook.host , refCook.path , refCook.name , refCook.value , refCook.isSecure , false, refCook.expires );
}

Но почему-то, не восстанавливются :( (но все сносятся).
Подскажите: какой метод надо использовать и/или какую информацию ещё надо для восстановления cookies-ов?

Отсутствует

 

№227-11-2006 16:27:42

Yan
Участник
 
Группа: Extensions
Откуда: Москва
Зарегистрирован: 27-02-2005
Сообщений: 1019

Re: Вопрос: Как восстановить ccokies-ы?

Zugr
Тонкости работы с куками не смотрел, но бросается в глаза, что gCookies = new Array();, а Вы обращаетесь к нему как к хэш-объекту:

Выделить код

Код:

for (var refCook in gCookies)
        cm.add(refCook.host , refCook.path , refCook.name , refCook.value , refCook.isSecure , false, refCook.expires );

Надо:

Выделить код

Код:

for (var i=0;i<gCookies.length;i++)
        cm.add(gCookies[i].host ,... );

Отсутствует

 

№328-11-2006 18:37:38

Zugr
Участник
 
Группа: Members
Зарегистрирован: 31-10-2006
Сообщений: 4

Re: Вопрос: Как восстановить ccokies-ы?

Yan пишет

Zugr
Надо:

Выделить код

Код:

for (var i=0;i<gCookies.length;i++)
        cm.add(gCookies[i].host ,... );

Да, да... Я это уже исправил.

Выделить код

Код:

for (var i in gCookies) {
   var refCook=gCookies[i];
   if (refCook instanceof CI.nsICookie)
      cm.add(refCook.host , refCook.path , refCook.name , refCook.value , refCook.isSecure , false, refCook.expires );
}

Заработало. Просто некий период нужен прежде это всё в файл попадёт.
Может нужна какая-то команда, чтобы записывать в файл?

Zugr

Отредактировано Zugr (28-11-2006 18:55:28)

Отсутствует

 

№430-06-2010 01:43:40

Victor_Kram
Участник
 
Группа: Members
Зарегистрирован: 30-06-2010
Сообщений: 1
UA: IE 6.0

Re: Вопрос: Как восстановить ccokies-ы?

Ребята,  прошу - помогите!!!

Восстановить куки...
"Запомнить пароль" не нажимал......
Куки хранились на компьютере в период ориентировочно с 22 по (как оказалось сегодня - до сегодня - 29.06)
Это время (прибл с 22 по 28) "висела" "открытая" страница.
Откывал обычно так:
открыл браузер
ввёл адрес
и автоматически открывалась страничка пользователя


за вчерашний день 28, скорее всего, сайт не запускал, хотя возможно запускал - точно не могу вспомнить.
сегодня попробовал открыть обычным методом - появилось окно входа ( просит ввести логин и пароль )
Сделал 2а восстановления системы - надеялся поможет - не помогло.
На данный сайт с помощью мозиллы с тех пор не заходили другие пользователи
Заходил я, но попыток ввести логин, пароль - не было.
( новые куки соответственно, думаю, не получал )
ОС - Виндовс ХР Профешенл СП2
Мозилла - 3,5,3

В данный момент пользуюсь (полностью!!!) експлорером

Прошу Вас - помогите !

С ув. Сергей

П.С. Если удобно приму Ваш ответ сюда - NRG-13@yandex.ru

Отредактировано Victor_Kram (30-06-2010 01:52:22)

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]