编写脚本解决 jscript/IE 中缺少 user:password@domain url 功能的问题

编写脚本解决 jscript/IE 中缺少 user:password@domain url 功能的问题

我目前有一个 jscript,它可以在服务器上为我运行 PHP 脚本。但我希望至少能保证一定的安全,所以我设置了一个登录名。现在,如果我使用常规的 user:password@domain 系统,它将无法工作;IE 认为这是一个安全问题。如果我让 IE 记住密码,它每次都会弹出一条确认我登录的安全消息(这破坏了按钮的意义)。

所以我需要一种方法来让安全信息消失。

  • 我可以降低安全设置,这对我来说没问题,但似乎没有什么办法可以解决这个问题。也许需要更改一些注册表设置?

  • 找到一个 jscript 修复程序,让我可以在 URL 中使用密码。以前有一个适用于旧系统的 regedit,它允许 IE 使用 URL 密码(在我的 64 位 Windows7 设置上不起作用),尽管我怀疑这对 jscript 是否有帮助(因为它会直接崩溃)。

  • 使用 IE 以外的应用程序。在这种情况下,我不确定该怎么做。我希望它反应灵敏且不可见,所以 IE 是一个不错的选择。它几乎是即时的。

  • 直接使用 XMLHttpRequest 而不是 IE?可能甚至更快,但我不知道它是否有帮助,还是只是有相同的错误。

  • 使用完全不同的方法。也许是一些可以编写网站浏览脚本的应用程序。

这是我的 jscript:

var args = {};

var objIEA = new ActiveXObject("InternetExplorer.Application");
if( WScript.Arguments.Item(0) == "pause" ){
    objIEA.navigate("http://domain/index.html?pause");
}
if( WScript.Arguments.Item(0) == "next" ){
    objIEA.navigate("http://domain/index.html?next");
}
objIEA.visible = false;
while(objIEA.readyState != 4) {}
objIEA.quit();

答案1

获得

wget --user=someuser --password=somepass -O nul: “http://domain/index.html?next”

-O nul:是为了避免创建一个无用的index.html

.cmd脚本中,使用"http://domain/index.html?%~1"


卷曲

curl -x someuser:somepass "http://domain/index.html?next" > nul:

Pythonurllib

#!/usr/bin/perl
import sys, urllib
action = sys.argv[1]
urllib.urlopen('http://user:pass@domain/index.html?'+action)

PerlLWP::UserAgent

#!/usr/bin/perl
use LWP::UserAgent;
my $action = $ARGV[0];
my $ua = LWP::UserAgent->new;

## Make sure you set the correct realm!
$ua->credentials(
    'domain:80',
    'realm',
    'user' => 'password'
);

$ua->get('http://domain/index.html?'.$action);

相关内容