WebView2 expose l'authentification du proxy via BasicAuthenticationRequested. Enregistrez le gestionnaire après l'initialisation de CoreWebView2 et avant de lancer la navigation qui a besoin du 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;
};

L'application fournit les valeurs configurées proxyHost, proxyPort et celles du compte. Pour un défi de proxy, l'Uri de l'événement est l'URI du serveur proxy. Vérifiez le point de terminaison attendu avant de sélectionner ce compte.

Le même événement peut aussi représenter l'authentification d'un site web. Un gestionnaire inconditionnel qui remplit un mot de passe de proxy d'entreprise à chaque événement peut l'envoyer à un site qui demande sa propre connexion.

Sélectionnez le point de terminaison du proxy séparément via la configuration proxy de l'environnement. L'événement répond à un défi ; il ne choisit pas la route réseau. Si l'application refuse l'authentification, elle peut définir e.Cancel. Sinon, laisser les identifiants non définis permet la boîte de dialogue de défi par défaut de WebView2.

Articles similaires