Տրանսպորտը կարող է պահել proxy-ի հավատարմագրերի մատակարարի այն օբյեկտը, որն ընտրվել է դրա pool-ի կառավարիչը ստեղծելիս։ WebProxy.Credentials-ը դրանից հետո փոխարինելը հաշվի փոխարկման վստահելի գործողություն չէ։

Ստեղծեք երթուղին և հաշիվը միասին՝ նախքան client-ը օգտագործելը.

var proxy = new System.Net.WebProxy(proxyEndpoint)
{
    Credentials = new System.Net.NetworkCredential(proxyUser, proxyPassword)
};
var handler = new System.Net.Http.HttpClientHandler
{
    UseProxy = true,
    Proxy = proxy
};
var client = new System.Net.Http.HttpClient(handler);

Վերջնակետը և հավատարմագրերը գալիս են հավելվածի կարգավորումներից։ Երկրորդ ինքնության համար ստեղծեք մեկ այլ handler. առաջին handler-ը կիսող մեկ այլ HttpClient կիսում է նաև դրա քաղաքականությունը։

Հատուկ ICredentials մատակարարը կարող է պատասխանել ավելի ուշ մարտահրավերներին, բայց չի կարող հաստատված թունելը վերապիտակավորել որպես այլ հաշիվ։ Ասինխրոն կանչերի շուրջ մեկ գլոբալ օգտանուն/գաղտնաբառ նշանակելը մարտահրավերի ժամանակը և հաշվի սեփականությունը թողնում է հակասության մեջ։

Երբ վերօգտագործում է անհրաժեշտ, պահեք սահմանափակ client-ների հավաքածու։ Չորացրեք հին աշխատանքը նախքան դրա տրանսպորտը հեռացնելը։ Յուրաքանչյուր հարցման համար նոր handler-ը վատնում է միացումների pool-երը. բոլոր պատմական հաշիվները հավերժ պահելը դրանք աճեցնում է առանց սահմանի։

Առնչվող հոդվածներ