MSAL.NET jista' jikseb it-trasport HTTP tiegħu mingħand IMsalHttpClientFactory. Kebbeb klijent ikkonfigurat għall-proxy:

sealed class TokenHttpFactory : IMsalHttpClientFactory
{
    private readonly HttpClient client;

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

    public HttpClient GetHttpClient() => client;
}

Oħloq il-handler u l-klijent darba għall-ħajja tal-applikazzjoni, imbagħad qabbad il-fabbrika waqt il-konfigurazzjoni eżistenti tal-builder MSAL:

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));

Il-builder huwa l-builder tal-applikazzjoni MSAL eżistenti tal-applikazzjoni; żomm l-awtorità tiegħu, ir-reġistrazzjoni tal-klijent u l-konfigurazzjoni tal-kredenzjali. Għal rotta tal-awtorità HTTPS permessa u aċċessibbli pubblikament mingħajr kont tal-proxy, indirizz HTTP mil-lista tal-proxy HTTP jista' jimla l-WebProxy tal-eżempju. Ikkonfigura l-kredenzjali tal-proxy fuq il-WebProxy meta jkun meħtieġ.

Il-fabbrika trid tkun sigura għall-ħjut. Uża mill-ġdid il-klijent minflok toħloq wieħed f'kull sejħa GetHttpClient. MSAL ma jarmix il-klijent ipprovdut; is-sid tiegħu jamministra dik il-ħajja.

Dan jikkontrolla t-talbiet HTTP ta' MSAL. Id-dħul interattiv jista' jiftaħ browser li n-netwerk tiegħu huwa separat. Għalhekk dħul b'suċċess fil-browser ma jipprovax li l-klijent HTTP tat-token għandu l-istess rotta.

Artikli relatati