W kompilacjach ServiceStack dla .NET 6+ HTTP Utils tworzy leniwego, współdzielonego HttpClient. Ustaw jego fabrykę programu obsługi podczas inicjalizacji aplikacji, przed pierwszym wywołaniem pomocnika:

ServiceStack.HttpUtils.HttpClientHandlerFactory = () =>
    new System.Net.Http.HttpClientHandler
    {
        UseProxy = true,
        Proxy = new System.Net.WebProxy("http://proxy.example:8080"),
        AutomaticDecompression =
            System.Net.DecompressionMethods.Brotli |
            System.Net.DecompressionMethods.Deflate |
            System.Net.DecompressionMethods.GZip
    };

Jeśli współdzielony klient już istnieje, zmiana tej fabryki nie skonfiguruje go ponownie. Ten moment to pierwsze sprawdzenie, gdy późniejsze przypisanie wydaje się nieskuteczne. Punkt końcowy HTTP można wybrać z listy serwerów proxy HTTP dla trasy publicznej, zanim ten współdzielony klient zostanie utworzony.

Dla konta proxy ustaw WebProxy.Credentials przez konfigurację aplikacji. HttpClientHandler.UseDefaultCredentials dotyczy konta serwera i nie wypełnia automatycznie poświadczeń tego obiektu proxy.

Starszy przykład HttpWebRequest i requestFilter dotyczy wcześniejszej implementacji. W nowszej formie konfiguracja żądania obejmuje pola żądania, a program obsługi odpowiada za routing połączenia.

Zachowaj istniejącą fabrykę niestandardowego klienta lub układ własności fabryki klienta HTTP aplikacji, jeśli jest już zainstalowany. Ta fabryka programu obsługi jest wspólną polityką; jednoczesne niepowiązane trasy wymagają klientów z osobną własnością.

Powiązane artykuły