Jūsu lietojumprogramma jautā CFNetwork, kā sasniegt vietni, un saņem URL, kas beidzas ar .pac. Šī resursdatora nosaukuma ievietošana socket savienojumā ir nepareizs ceļš: tas norāda konfigurācijas skriptu.

CFNetworkCopyProxiesForURL atgriež sakārtotu vārdnīcu masīvu mērķa URL. Pirms galapunkta lauku lasīšanas pārbaudiet kCFProxyTypeKey. kCFProxyTypeAutoConfigurationURL tipa vārdnīca sniedz kCFProxyAutoConfigurationURLKey, kam nepieciešams vēl viens novērtēšanas solis.

  1. Iegūstiet pašreizējos sistēmas starpniekservera iestatījumus un pieprasiet maršrutus uz faktisko galamērķa URL.
  2. Kad rezultāts atsaucas uz PAC URL, novērtējiet šo skriptu tam pašam galamērķim.
  3. Lasiet iegūto kandidātu tipus un galapunktus. HTTP starpniekserverim, SOCKS starpniekserverim un tiešam maršrutam nepieciešama atšķirīga savienojuma apstrāde.
  4. Saglabājiet kandidātu secību, piemērojot atļauto kļūmes un rezerves uzvedību.

CFNetworkExecuteProxyAutoConfigurationURL asinhroni lejupielādē un novērtē skriptu. Tā tūlītējā atgriešanas vērtība ir run loop avots. Ieplānojiet šo avotu; atzvanīšana sniedz novērtējuma rezultātu vai kļūdu pēc darba pabeigšanas. Avota izveide un tukša rezultāta mainīgā tūlītēja nolasīšana neko negaida. Atzīmējiet avotu kā nederīgu, ja darbība ir jāatceļ.

Turiet mērķa URL piesaistītu meklējumam. PAC skripts var izvēlēties dažādus maršrutus diviem resursdatoriem, tāpēc viena atrisināta starpniekservera glabāšana kā atbilde uz katru nākamo galamērķi maina skripta politiku. Tāpat tiešs kandidāts ir skaidrs maršruts, nevis pazudis starpniekservera resursdatora nosaukums.

Šie API ir noderīgi, kad pielāgotam transportam ir jāinterpretē sistēmas iestatījumi. Tie neievieš nākamo starpniekservera protokolu šim transportam, un meklējums neiegūst paroles no Keychain. Operētājsistēmā macOS atsevišķi saskaņojiet starpniekservera akreditācijas datus Keychain.

Saistītie raksti