.NET IWebProxy: vermy die cast van stelselvolmagte na WebProxy
Hanteer 'n stelselvolmag wat as IWebProxy teruggegee word sonder om aan te neem dat die konkrete klas daarvan WebProxy is.
IWebProxy policy = WebRequest.GetSystemWebProxy();
request.Proxy = policy;
Hou die teruggegewe objek as IWebProxy. Hierdie fragment geld vir bestaande kode wat op WebRequest gebaseer is, nie as 'n aanbeveling om daardie verouderde API vir 'n nuwe toepassing te gebruik nie.
WebProxy implementeer die koppelvlak, maar nie elke objek wat die koppelvlak implementeer, erf van WebProxy nie. 'n Stelselomhulsel kan dus die cast verwerp voordat enige netwerkversoek plaasvind. 'n Privaat .NET Framework-klasnaam soos WebProxyWrapperOpaque is 'n implementeringsbesonderheid, nie 'n probleem met die volmag-eindpunt of die rekening nie.
Vir 'n roetebesluit, roep IsBypassed(destination) en GetProxy(destination) met die werklike bestemming-URI. 'n Oorslaan kan daardie bestemming self teruggee, en 'n PAC-ondersteunde beleid kan 'n ander roete vir 'n ander gasheer kies.
Vir verifikasie stel IWebProxy reeds Credentials beskikbaar. Gebruik die ondersteunde rekening en metode sonder om te cast om by die eienskap uit te kom.
Om een URI te onttrek om 'n vervangende WebProxy te bou, gooi die oorspronklike beleid se gedrag per bestemming weg. Doen dit net wanneer 'n vaste eindpunt die beoogde toepassingskonfigurasie is, nie as 'n regstelling vir 'n tipefout nie.