Korištenje sistemskih postavki proxyja ili zamjene na nivou sesije u URLSession
Neka URLSession prema zadanim postavkama koristi sistemske postavke proxyja, a namjerne zamjene ograničite na konfigurisanu sesiju.
macOS aplikacija koja koristi URLSession obično može slijediti proxy politiku računara bez traženja od korisnika da ponovo unese isti proxy. Apple dokumentuje da zadana vrijednost connectionProxyDictionary koristi sistemske postavke.
Menadžer preuzimanja može razumno ponuditi vlastite proxy postavke. Učinite izbor eksplicitnim: „Koristi sistemske postavke“ i namjerno konfigurisana sesija su različiti načini rada. Kopiranje jedne trenutne proxy adrese stvara snimak rute.
Primijenite prilagođenu politiku prije kreiranja sesije. URLSession kopira dostavljenu konfiguraciju; promjena originalnog konfiguracijskog objekta nakon toga ne ažurira postojeću sesiju. Kada korisnik promijeni proxy postavku aplikacije, organizujte novu sesiju za novu politiku i odlučite kako zahtjevi koji su već u toku treba da se završe ili otkažu.
Za podržane ciljeve implementacije Apple sada preporučuje proxyConfigurations umjesto starijeg sučelja rječnika jer podržava sigurne tipove proxyja i releja. Provjerite dostupnost API-ja u odnosu na minimalnu verziju operativnog sistema aplikacije prije nego što odaberete to sučelje.
Ovo ponašanje pripada URLSession-u. Paket koji otvara vlastite sockete ili koristi drugu HTTP implementaciju treba vlastitu proxy podršku. Identificirajte taj transport prije promjene sistemskih postavki.