Maaaring maglaman ang URI ng username:password bago ang host nito. Hindi ito nangangahulugang kinokopya ng bawat .NET API na tumatanggap ng URI na iyon ang impormasyon ng user sa isang object ng pagpapatunay.

Kapag gumagawa ng WebProxy nang direkta, gawing tahasan ang pagtatalaga ng kredensyal:

var proxy = new WebProxy("http://203.0.113.10:8080")
{
    Credentials = new NetworkCredential(proxyUser, proxyPassword)
};

Ang mga variable ng endpoint at account ay halimbawa lamang. Pinapanatili nitong hiwalay ang address ng destinasyon, address ng proxy at account ng proxy.

Kung ang isang format ng input ay nagbibigay ng URL na may kredensyal, sadyang i-parse ang impormasyon ng user nito. Panatilihin ang password na may mga tutuldok sa pamamagitan ng paghahati lamang sa separator ng kredensyal, at i-decode ang mga naka-encode na bahagi sa angkop na yugto. Iwasang i-print ang orihinal na URL habang ginagawa ang diagnosis sa parser na iyon.

Ang URL ng proxy na gumagana bilang setting ng environment ay maaaring kumilos nang iba kapag ipinasa sa ibang constructor. Ang initialization ng environment proxy ay may sariling lohika ng pag-parse; hindi ito pangako na bawat constructor ay gumagamit ng parehong mga field.

Sa wakas, itakda ang naka-configure na object ng proxy sa handler na nagsasagawa ng kahilingan. Ang tamang kredensyal sa isang WebProxy na hindi ginagamit ay hindi makakaapekto sa koneksyon.

Kaugnay na mga artikulo