CFNetworkCopyProxiesForURL-ek itzultzen dituen PAC URLak ebaluatzea
Bihurtu CFNetwork-en proxy konfigurazio automatikoko emaitzak helmuga bakoitzeko ibilbideetan, PAC helbidea proxyaren amaierako puntuarekin nahastu gabe.
Zure aplikazioak CFNetwork-i galdetzen dio nola iritsi webgune batera, eta .pac-z amaitzen den URL bat jasotzen du. Ostalari-izen hori socket konexioan jartzea bide okerra da: konfigurazio script bat identifikatzen du.
CFNetworkCopyProxiesForURL-ek helburuko URLarentzako hiztegi-multzo ordenatua itzultzen du. Irakurri kCFProxyTypeKey amaierako puntuko eremuak baino lehen. kCFProxyTypeAutoConfigurationURL motako hiztegi batek kCFProxyAutoConfigurationURLKey ematen du, eta horrek beste ebaluazio-pauso bat behar du.
- Lortu sistemaren uneko proxy ezarpenak eta eskatu benetako helburuko URLarako ibilbideak.
- Emaitza batek PAC URL bat aipatzen duenean, ebaluatu script hori helmuga bererako.
- Irakurri lortutako hautagaien motak eta amaierako puntuak. HTTP proxy batek, SOCKS proxy batek eta ibilbide zuzen batek konexio-kudeaketa desberdina behar dute.
- Mantendu hautagaien ordena baimendutako hutsegite- eta ordezko-jokabidea aplikatzean.
CFNetworkExecuteProxyAutoConfigurationURL-ek scripta modu asinkronoan deskargatu eta ebaluatzen du. Bere itzulera-balio berehalakoa run loop iturburu bat da. Programatu iturburu hori; callbackak ebaluazio-emaitza edo errorea ematen du lana amaitzean. Iturburua sortu eta emaitza-aldagai huts bat berehala irakurtzeak ez du ezer itxaroten. Baliogabetu iturburua eragiketa bertan behera utzi behar bada.
Eduki helburuko URLa bilaketari lotuta. PAC script batek ibilbide desberdinak hautatu ditzake bi ostalarirentzat, beraz proxy ebatz bat ondorengo helmuga guztien erantzun gisa gordetzeak scriptaren politika aldatzen du. Era berean, hautagai zuzena ibilbide esplizitua da, ez falta den proxy ostalari-izena.
API hauek erabilgarriak dira garraio pertsonalizatu batek sistema-ezarpenak interpretatu behar dituenean. Ez dute garraio horretarako proxy protokoloa inplementatzen, eta bilaketak ez ditu pasahitzik lortzen Keychainetik. macOS-en, lotu proxy-kredentziala Keychainen bereizita.