Http-аутентификация в букмарклете Firefox 3 - PullRequest
13 голосов
/ 07 августа 2008

Я пытаюсь создать букмарклет для публикации закладок 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 -->  

Если затем перейти к адресной строке и нажать клавишу ввода, она изменится на:

<?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 ]

3 голосов
/ 10 августа 2008

Можете ли вы понюхать трафик, чтобы найти, что на самом деле отправляется? Он вообще отправляет какие-либо данные аутентификации, и он неверен или представлен в форме, которая не нравится серверу, или он вообще никогда не отправляется firefox?

2 голосов
/ 17 августа 2008

@ travis Выглядит очень хорошо! Я обязательно взгляну на это. Я могу вспомнить несколько мест, где я могу использовать это

Я так и не понял, как прослушать трафик, но обнаружил, что php-сайт на моем собственном сервере с http-auth работает нормально, поэтому я подумал, что это что-то вкусное. Затем я создал страницу php, которая делает wget из вкусного API, и все работает отлично:)

1 голос
/ 15 августа 2008

Я бы порекомендовал проверить аддон 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

Я щелкаю по нему средней кнопкой мыши, и он открывает новую вкладку и запускает макрос, переводя меня прямо на нужную мне страницу, выполнив вход с указанной учетной записью.

0 голосов
/ 07 августа 2008

Работает ли вызов метода дважды?

Мне кажется, что ваша аутентификация утверждается после получения контента, поэтому теперь вторая попытка работает, потому что у вас правильные куки.

...