我正在尝试访问需要使用WebBrowser进行基本身份验证的网页。我知道WebBrowser本身不支持显示基本身份验证的提示。然而,要解决这个问题,我会在标题中或直接在网址中传递用户名和密码。
标头方法
string hdr = "Authorization: Basic " + Convert.ToBase64String(Encoding.UTF8.GetBytes("user" + ":" + "passwd")) + System.Environment.NewLine;
GetCurrentWebBrowser().Navigate(new Uri("https://httpbin.org/basic-auth/user/passwd"), null, hdr);
网址方法
UriBuilder uriSite = new UriBuilder("https://httpbin.org/basic-auth/user/passwd");
uriSite.UserName = "user";
uriSite.Password = "passwd";
GetCurrentWebBrowser().Navigate(uriSite.Uri);
使用fiddler,我可以看到设备在使用上述方法时正确地向网页发出请求。但是,WebBrowser不显示内容,导航导航失败或导航已完成事件。有没有人知道如何解决这个问题,或者这是Windows Phone 8上WebBrowser控件的已知问题?