油猴子的脚本来自动登录HTTP身份验证
-
09-06-2019 - |
题
我已经有了相当多的油猴子的脚本我写在我的工作自动登录我入内部网站我们这里。我已经写入一个脚本用于几乎每一个这些地点除了我们的时间表应用程序,它使用HTTP认证。
有没有办法我可以用油猴子登录我进入这个网站自动?
编辑:我知道商店密码功能的浏览器,但我的脚本走一步通过检查,如果我登录网站时负载(由横穿HTML),然后提交后的登录网页。这将删除的步骤具有载的网站,输入登录网页,进入我的凭证,然后提交击中
解决方案
它可以登录使用HTTP身份验证通过设定"授权"HTTP头,值此头设置的字符串的"基本username:password",但与"username:password"部分串基64编码。
http://frontier.userland.com/stories/storyReader$2159
一位研究发现的油猴子有一个功能建成它在那里你可以送GET/POST请求到服务器被称为GM_xmlhttpRequest
http://diveintogreasemonkey.org/api/gm_xmlhttprequest.html
所以把它全部一起(也得到这个代码转换串为base64我得到以下
http://www.webtoolkit.info/javascript-base64.html
var loggedInText = document.getElementById('metanav').firstChild.firstChild.innerHTML;
if (loggedInText != "logged in as jklp") {
var username = 'jklp';
var password = 'jklpPass';
var base64string = Base64.encode(username + ":" + password);
GM_xmlhttpRequest({
method: 'GET',
url: 'http://foo.com/trac/login',
headers: {
'User-agent': 'Mozilla/4.0 (compatible) Greasemonkey/0.3',
'Accept': 'application/atom+xml,application/xml,text/xml',
'Authorization':'Basic ' + base64string,
}
});
}
因此,当我现在请访问网站,通过DOM如果我没记录,就自动记录给我。
其他提示
HTTP身份验证的信息发送每一请求,不仅仅是以登录。浏览器将高速缓存的登录信息的会议之后的登录在第一时间。所以,你真的不保存任何试图通过检查,如果你已经记录中。
你也可以忘记的油猴子的完全和只是给您的登录到网址如下所示:
http://username:password@host/
当然,保存在一个书签,可能是一个安全风险,但不多-比节省您的密码在浏览器。
你为什么不使用火狐(我认为你使用火狐)记住你凭证使用密码的经理吗?
我发现这个的链接: HTTP身份验证与HTML Forms.看起来像你可以使用javascript做HTTP认证。我不认为你可以有油猴子的中断,当你第一次转到某个网址。你可能需要设置一些排序的启动点,可用于有油猴子的自动重新定向+登录。例如,可具有当地页,需要的目标网址查询字符串中,有油猴子的自动执行认证+重定向。唯一的问题是,你要包裹的网站签你的启动页的书签,使用作为切入点。
"http://username:password@host/"不工作即FireFox工作确定。