Eksplicitne poverilnice za .NET WebProxy
Pri ustvarjanju .NET WebProxy dodelite poverilnice eksplicitno, namesto da predpostavljate, da bo URI s poverilnicami napolnil njegov račun.
URI lahko vsebuje username:password pred svojim gostiteljem. To ne pomeni, da vsak .NET API, ki sprejme ta URI, kopira uporabniške podatke v objekt za preverjanje pristnosti.
Ko WebProxy ustvarjate neposredno, naredite dodelitev poverilnic eksplicitno:
var proxy = new WebProxy("http://203.0.113.10:8080")
{
Credentials = new NetworkCredential(proxyUser, proxyPassword)
};Spremenljivke končne točke in računa so ponazoritvene. Tako ostanejo ciljni naslov, naslov proxyja in proxy račun ločeni.
Če vhodni format zagotavlja URL s poverilnicami, namerno razčlenite njegove uporabniške podatke. Ohranite geslo z dvopičji tako, da delite samo na ločilu poverilnic, in dekodirajte kodirane komponente v ustreznem koraku. Med diagnosticiranjem tega razčlenjevalnika ne tiskajte izvirnega URL-ja.
Proxy URL, ki deluje kot nastavitev okolja, se lahko obnaša drugače, ko ga posredujete drugemu konstruktorju. Inicializacija proxyja iz okolja ima lastno logiko razčlenjevanja; to ni obljuba, da vsak konstruktor uporablja ista polja.
Na koncu nastavite konfigurirani proxy objekt na obdelovalnik, ki izvede zahtevo. Pravilne poverilnice na neuporabljenem WebProxy ne morejo vplivati na povezavo.