Wann Jint eng fehlend dnsResolve oder myIpAddress beim Evaluéiere vum PAC mellt, ass méi JavaScript ze lueden net onbedéngt d'Léisung. Dës PAC-Hëllefsfunktiounen gehéieren zu der Ëmgebung, déi d'Hostapplikatioun zur Verfügung stellt.

Virum Opruff vum FindProxyForURL

Wielt dee ënnerstëtzten PAC-Hëllefsfunktiounsset an d'Adressfamilljen, an installéiert dës Hëllefsfunktiounen dann am Motor. Respektéiert hir Kontrakter: dnsResolve hëlt en Hostnumm, myIpAddress hëlt keng Argumenter a brauch eng Politik fir de lokalen Interface, an shExpMatch benotzt Muschter am Shell-Stil. En Stub, deen eng bequem Wäert zréckgëtt, kann onopfälleg den falschen Trass wielen.

Nodeem dës Initialiséierung gemaach ass, kann den Haaptopruff an Jint 4.4.0 sou ausgesinn:

var destination = new Uri(destinationUrl);
engine.Execute(pacSource);
var routeList = engine.Invoke(
    "FindProxyForURL",
    destinationUrl,
    destination.IdnHost
).AsString();

engine ass den ageriichten Jint.Engine; pacSource ass dee geholten PAC-Programm. destination.IdnHost gëtt den Hostnumm ouni Port oder Pad. Dësen Opruff hëlt kee PAC an mécht keng Proxyverbindung op.

Nom Opruff

Interpretéiert en Resultat wéi PROXY proxy.example:8080; DIRECT als eng geuerdent Lëscht vun Trasskandidaten an Ersatzléisung. De ganze String als Proxy-URL ze schécken hëlt seng Bedeitung ewech. Haalt en Evaluatiounsfehler getrennt vun engem explizitten DIRECT-Resultat.

Wärend et leeft

Konfiguréiert dem Jint seng Grenze fir Dauer, Aussoen, Erënnerung an Ofbroch, a setzt just déi néideg Hostfunktiounen aus. Begrenzt DNS-Ruffunktiounen separat: Prüfunge vun der JavaScript-Ausféierung maachen en arbiträr blockéierenden Hostopruff net ënnerbrachbar. Serialiséiert den Zougang zu engem Motor oder gitt concurrent Aarbecht getrennt besaten Instanzen; Motore si net sécher fir gläichzäiteg Notzung.

PAC-Implementatioune vu Browsere kënnen an Hëllefsfunktiounserweiderungen an den URL-Detailer, déi se weisen, ënnerscheede, besonnesch fir HTTPS. Eng eenzeg Beispillresultat ze treffen beweist manner wéi d'Routingverhalen vum Browser ze treffen.

Ähnlech Artikelen