2

我们有一个使用 HTTP 基本身份验证保护的应用程序。

我们需要在另一个客户端 Web 应用程序中访问来自上述应用程序的几个 url。

当我们点击这些受保护的 url 时,它们应该会出现在新的弹出窗口中。

我们做到了

window.open("http://username:password@server:port/appcontext/otherparams");

这在 Firefox 和 Chrome 中运行良好,但在 Internet Explorer 中却不行。经过一些谷歌后,我们发现 Internet Explorer 不支持上述格式的 url。

有没有其他方法可以使它在所有浏览器中工作?

编辑:

无论如何,我们可以将身份验证移动到服务器端并实现相同的功能。我知道我们可以使用

Authenticator.setDefault

但不确定我们如何在身份验证后再次登陆弹出窗口。任何帮助,将不胜感激。

谢谢你的时间。

4

1 回答 1

2

看看这篇文章,它提供了很多关于这个问题的信息。

如文章中所述,要在 url 中启用用户名/密码,您可以通过以下方式编辑注册表数据库:

要在 Windows Explorer 和 Internet Explorer 中禁用新的默认行为,请在以下注册表项之一中创建 iexplore.exe 和 explorer.exe DWORD 值,并将其值数据设置为 0。

For all users of the program, set the value in the following registry key:
HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE

For the current user of the program only, set the value in the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE
于 2013-04-08T19:10:01.780 回答