2008-08-07 29 views
11

Im tratando de crear un bookmarklet para publicar marcadores del.icio.us en una cuenta separada.Http Auth en un bookmarklet de Firefox 3

he comprobado desde la línea de comandos como:

wget -O - --no-check-certificate \ 
"https://seconduser:[email protected]/v1/posts/add?url=http://seet.dk&description=test" 

y esto funciona muy bien.

Luego quería crear un bookmarklet en mi Firefox. Busqué en Google y encontré pedazos y terminó con:

javascript:void(
    open('https://seconduser:[email protected]/v1/posts/add?url=' 
      +encodeURIComponent(location.href) 
      +'&description='+encodeURIComponent(document.title), 
      'delicious','toolbar=no,width=500,height=250' 
     ) 
    ); 

pero todo lo que sucede es que me sale esto desde 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 --> 

si yo voy a la barra de direcciones y pulse enter, cambia a:

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

Alguna idea de cómo conseguir que funcione directamente de los marcadores?

Respuesta

3

¿Puedes oler el tráfico para encontrar lo que realmente se envía? ¿Está enviando algún dato de autenticación y es incorrecto o se presenta en una forma que no le gusta al servidor, o nunca lo está enviando en absoluto?

0

¿Funciona dos veces para llamar al método?

Me parece que su autenticación está siendo aprobada después de que llega el contenido, por lo que un segundo intento ahora funciona porque tiene las cookies correctas.

1

Recomiendo ver el iMacros addon for Firefox. Lo uso para iniciar sesión en un servidor web local y luego de iniciar sesión, navego directamente a una página determinada. El código que tengo es el siguiente, pero le permite grabar sus propias macros:

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 

I botón central en él y se abre una nueva pestaña y se ejecuta la macro me lleva directamente a la página que quiero, conectado con la cuenta que especifiqué

2

@travis Se ve muy bien! Seguro lo echaré un vistazo. Puedo pensar en varios lugares que puedo usar que

Nunca llegué a olfatear el tráfico pero descubrí que un sitio php en mi propio servidor con http-auth funcionaba bien, así que pensé que era algo delicioso. Luego creé una página php que hace un wget de la deliciosa API y todo funciona bien :)