将凭据发布到基本授权站点并在新浏览器中打开链接.打开URL而不是响应
本文关键字:链接 浏览器 打开 URL 响应 站点 授权 | 更新日期: 2023-09-27 18:11:26
下面的代码将向IIS基本授权站点发布请求。并使用Windows凭据成功登录站点。但是我需要做的是把它转换成在浏览器中打开网站,就像用target="null"打开一个新的超链接一样。
所以只是回顾一下,你如何发布WebRequest到一个新的浏览器选项卡?或者如何将CredentialCache发送到新的URL请求?
var request = WebRequest.Create(testURL);
SetBasicAuthHeader(request, "username", "password", testURL);
var response = request.GetResponse();
}
public void SetBasicAuthHeader(WebRequest request, String userName, String userPassword, String testURL)
{
CredentialCache credentialCache = new CredentialCache();
credentialCache.Add(new System.Uri(testURL), "Basic", new NetworkCredential(userName, userPassword, "domain"));
request.Credentials = credentialCache;
request.PreAuthenticate = true;
}
简短的回答是,您不能向新选项卡发送响应。你试图做的问题是,你在服务器上建立的请求/响应在技术上是服务器的…不是客户。因此,即使构建请求并将用户重定向到您刚刚进行身份验证的URL,客户机仍然被认为未进行身份验证,因为身份验证在服务器上生效。