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

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.

№116-03-2009 18:38:30

chikanok
Участник
 
Группа: Members
Зарегистрирован: 06-02-2008
Сообщений: 18
UA: Firefox 3.0

Проблема с RegExp в Observer на событие http-on-modify-request

Привет.
Вообщем пишу небольшое расширение, пока что тестирую код под CustomButtons.
В Observer на http-on-modify-request урл проверяется массивом RegExp`ов, по шаблону только с разными site

Выделить код

Код:

/^\w+:\/\/([^\.\/\?=&]+\.)*?site.([^\.]+)?(:\d+)?(\/|$)/i

Проблема в том ,что при открытие страниц, FF либо неплохо подвисает, либо полностью зависает, Говорит что скрипт не отвечает.
Думаю, что проблема в том, что событие происходит часто соответственно и проверка.
Подскажите как с этим боротся?

Отсутствует

 

№217-03-2009 15:40:54

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
UA: Firefox 3.0
Веб-сайт

Re: Проблема с RegExp в Observer на событие http-on-modify-request

Например, можно сначала проверять наличие подстроки 'site' в адресе, а потом уже проверять его массивом с regexp'ами.
Это, если проблема только в количестве проверок. Однако, проблема может быть также в большом количестве observer'ов. Перед повторной установкой observer'а (после редактирования кнопки, например), старый неплохо бы снять (removeObserver).
Кстати, как 'выдёргивается' адрес у subject'а http-on-modify-request (т. е., nsIChannel) ? subject. URI. spec ? Не короче ли будет через subject. URI. host ?


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

Board footer

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