Responder a un desafío de proxy de WebView2 antes de navegar
Proporcione credenciales de proxy mediante el evento BasicAuthenticationRequested de WebView2 después de comprobar qué punto de conexión las solicitó.
WebView2 expone la autenticación de proxy mediante BasicAuthenticationRequested. Registre el controlador después de la inicialización de CoreWebView2 y antes de iniciar la navegación que necesita el proxy.
webView.CoreWebView2.BasicAuthenticationRequested += (_, e) =>
{
if (!Uri.TryCreate(e.Uri, UriKind.Absolute, out var challengeUri)
|| !challengeUri.Host.Equals(proxyHost,
StringComparison.OrdinalIgnoreCase)
|| challengeUri.Port != proxyPort)
{
return;
}
e.Response.UserName = proxyUser;
e.Response.Password = proxyPassword;
};La aplicación proporciona los valores configurados de proxyHost, proxyPort y cuenta. Para un desafío de proxy, el Uri del evento es el URI del servidor proxy. Compruebe el punto de conexión esperado antes de seleccionar esa cuenta.
El mismo evento también puede representar la autenticación de un sitio web. Un controlador incondicional que rellena una contraseña de proxy corporativa en cada evento puede enviarla a un sitio web que solicite su propio inicio de sesión.
Seleccione el punto de conexión del proxy por separado mediante la configuración de proxy del entorno. El evento responde a un desafío; no elige la ruta de red. Si la aplicación rechaza la autenticación, puede establecer e.Cancel. De lo contrario, dejar las credenciales sin establecer permite el diálogo de desafío predeterminado de WebView2.