Javascript Firefox3书签中的Http身份验证
我正在尝试创建一个bookmarklet,用于将del.icio.us书签发布到单独的帐户 我从命令行对其进行了测试,如下所示:Javascript Firefox3书签中的Http身份验证,javascript,firefox,delicious-api,Javascript,Firefox,Delicious Api,我正在尝试创建一个bookmarklet,用于将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中创建一个bookmarklet。我在谷歌上搜索,找到了
wget -O - --no-check-certificate \
"https://seconduser:thepassword@api.del.icio.us/v1/posts/add?url=http://seet.dk&description=test"
这很有效
然后我想在我的firefox中创建一个bookmarklet。我在谷歌上搜索,找到了一些零碎的东西,结果是:
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 -->
你知道如何直接从书签中使用它吗?调用该方法两次是否有效
在我看来,您的身份验证在内容到达后被批准,因此第二次尝试现在可以工作了,因为您有正确的cookie。您能嗅探流量以找到实际发送的内容吗?它发送的任何身份验证数据都是错误的,还是以服务器不喜欢的形式呈现,或者根本就不是firefox发送的?我建议您检查一下。我使用它登录到本地web服务器,登录后直接导航到某个页面。我的代码如下所示,但它允许您记录自己的宏:
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
我用鼠标中键单击它,它会打开一个新选项卡,并运行宏,将我直接带到我想要的页面,使用我指定的帐户登录。@travis看起来很不错!我一定会调查一下的。我可以想到几个地方我可以使用它 我从来没有抽出时间去嗅探流量,但我发现我自己的服务器上有一个带有http auth的php站点工作得很好,所以我觉得它很好吃。然后,我创建了一个php页面,该页面包含美味api的wget,一切正常:)