Http Auth в букмарклете Firefox

Я пытаюсь создать букмарклет для размещения закладок del_icio_us в отдельной учетной записи.
Я тестировал это из командной строки, например:
wget -O - --no-check-certificate \
"https_seconduser:thepassword@api_del_icio_us/v1/posts/add?url=http_seet_dk&description=test"
Это прекрасно работает.
Затем я захотел создать закладку в своем Firefox. Я погуглил, нашел кусочки и в итоге получил следующее:
javascript:void(
open('https_seconduser:password@api_del_icio_us/v1/posts/add?url='
+encodeURIComponent(location.href)
+'&description='+encodeURIComponent(document.title),
'delicious','toolbar=no,width=500,height=250'
) );
Но все, что происходит, это то, что я получаю это от del_icio_us:
<?xml version="1.0" standalone="yes"?>
<result code="access denied" />
<!-- fe04_api_del_ac4_yahoo_net uncompressed/chunked Thu Aug 7 02:02:54 PDT 2008 -->
Если я затем перейду в адресную строку и нажму Enter, она изменится на:
<?xml version='1.0' standalone='yes'?>
<result code="done" />
<!-- fe02_api_del_ac4_yahoo_net uncompressed/chunked Thu Aug 7 02:07:45 PDT 2008 -->
Есть идеи, как заставить его работать прямо из закладок?
4 ответа
Можете ли вы прослушать трафик, чтобы определить, что на самом деле отправляется? Отправляет ли он вообще какие-либо данные аутентификации, и они неверны или представлены в форме, которая не нравится серверу, или Firefox вообще никогда не отправляет их?
Выглядит очень красиво! Я обязательно рассмотрю это. Я могу придумать несколько мест, где я могу это использовать
Я так и не удосужился пронюхать трафик, но обнаружил, что php-сайт на моем собственном сервере с http-auth работает нормально, поэтому я решил, что это что-то очень вкусное. Затем я создал php-страницу, которая создает восхитительный API, и все работает нормально :)
Работает ли вызов метода дважды?
Мне кажется, что ваша аутентификация подтверждается после получения контента, поэтому вторая попытка теперь работает, потому что у вас есть правильные файлы cookie.
Я бы порекомендовал проверить дополнение iMacros для Firefox. Я использую его для входа на локальный веб-сервер и после входа в систему перехожу непосредственно на определенную страницу. Мой код выглядит так, но он позволяет записывать собственные макросы:
VERSION BUILD=6000814 RECORDER=FX
TAB T=1
URL GOTO=http_10_20_2_4/login
TAG POS=1 TYPE=INPUT:TEXT FORM=NAME:introduce ATTR=NAME:initials CONTENT=username-goes-here
SET !ENCRYPTION NO
TAG POS=1 TYPE=INPUT:PASSWORD FORM=NAME:introduce ATTR=NAME:password CONTENT=password-goes-here
TAG POS=1 TYPE=INPUT:SUBMIT FORM=NAME:introduce ATTR=NAME:Submit&&VALUE:Go
URL GOTO=http_10_20_2_4/timecard
Я нажимаю на него средней кнопкой мыши, и он открывает новую вкладку и запускает макрос, который переносит меня прямо на нужную страницу, войдя в систему с указанной мной учетной записью.
Как я могу превратить строку HTML в объект DOM в расширении FF?
Как я могу превратить строку HTML в объект DOM в расширении Firefox? Я загружаю веб-страницу (HTML-тег-суп) с XMLHttpRequest и хочу взять выходные данные и превратить их в объект DOM, к которому затем можно будет выполнять запросы XPATH. Как преобразовать строку в объект DOM? Похоже, что общее решение состоит в том, чтобы создать скрытый iframe и бросить в него содержимое строки. Ходили разговоры об обновлении DOMParser для поддержки text/html, но начиная с Firefox 3.0.1 вы все равно получаете NS_ERROR_NOT_IMPLEMENTED если попробуете. Есть ли какой-либо вариант, кроме использования скрытого трюка iframe? А если нет, то как лучше всего проделать трюк с iframe, чтобы ваш код работал вне контекста любых открытых в данный момент вкладок (чтобы закрытие вкладок не испортило код и т. д.)? Это пример того, почему я ищу решение, отличное от взлома iframe: если мне придется написать весь этот код, чтобы получить надежное решение, то я бы предпочел продолжать искать что-то другое…
Вызов функции ASP . NET из JavaScript?
Я пишу веб-страницу в ASP . NET. У меня есть код JavaScript, и у меня есть кнопка отправки с событием клика. Можно ли вызвать метод, который я создал в ASP, с помощью события click JavaScript? Вы должны использовать некоторую библиотеку Ajax, например: Anthem 20 ответов Что ж, если вы не хотите делать это с помощью Ajax или каким-либо другим способом и просто хотите, чтобы происходила обычная обратная передача ASP . NET, вот как вы это делаете (без использования каких-либо других библиотек): Хотя это немного сложно... :) i. В вашем файле кода (при условии, что вы используете C# и .NET 2.0 или более позднюю версию) добавьте…
Инструменты устранения неполадок JavaScript в Internet Explorer
Инструменты устранения неполадок JavaScript в Internet Explorer Я интенсивно использую Firebug и консоль Mozilla JS, но время от времени я сталкиваюсь с ошибкой JavaScript только для IE, которую действительно трудно найти (например, ошибка в строке 724, когда исходный HTML-код содержит всего 200 строк). Я хотел бы иметь легкий JS-инструмент (а-ля firebug) для Internet Explorer, что-то, что я могу установить за считанные секунды на ПК клиента, если я столкнусь с ошибкой…