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.

Artículos relacionados