MSAL.NET boleh mendapatkan pengangkutan HTTPnya daripada IMsalHttpClientFactory. Balut klien yang dikonfigurasi untuk proksi:

sealed class TokenHttpFactory : IMsalHttpClientFactory
{
    private readonly HttpClient client;

    public TokenHttpFactory(HttpClient client)
    {
        this.client = client;
    }

    public HttpClient GetHttpClient() => client;
}

Cipta pengendali dan klien sekali untuk jangka hayat aplikasi, kemudian lampirkan kilang semasa konfigurasi pembina MSAL sedia ada:

var proxy = new WebProxy("http://proxy.example:8080");
var handler = new HttpClientHandler { Proxy = proxy, UseProxy = true };
var tokenHttp = new HttpClient(handler);

builder.WithHttpClientFactory(new TokenHttpFactory(tokenHttp));

Pembina ialah pembina aplikasi MSAL sedia ada aplikasi; kekalkan autoriti, pendaftaran klien dan konfigurasi kelayakannya. Untuk laluan autoriti HTTPS yang dibenarkan dan boleh dicapai secara awam tanpa akaun proksi, alamat HTTP daripada senarai proksi HTTP boleh mengisi WebProxy contoh. Konfigurasikan kelayakan proksi pada WebProxy apabila perlu.

Kilang mesti selamat benang. Guna semula klien dan bukan mencipta satu dalam setiap panggilan GetHttpClient. MSAL tidak melupuskan klien yang dibekalkan; pemiliknya menguruskan jangka hayat itu.

Ini mengawal permintaan HTTP MSAL. Log masuk interaktif boleh membuka pelayar yang rangkaiannya berasingan. Oleh itu, log masuk pelayar yang berjaya tidak membuktikan bahawa klien HTTP token mempunyai laluan yang sama.

Artikel berkaitan