Proxy-Anfragen und Apples Erreichbarkeits-Vorabprüfung
Lassen Sie die beabsichtigte Proxy-Anfrage ihr eigenes Ergebnis ermitteln, statt sie abzulehnen, weil eine separate Erreichbarkeitsprüfung eine andere Netzwerkannahme verwendet hat.
Eine Erreichbarkeits-Vorabprüfung kann einen Download ablehnen, bevor die App ihre Proxy-Route versucht. Eine direkte Bewertung des Ziels stellt eine andere Frage als das Erreichen eines Vermittlers, der sich mit diesem Ziel verbindet.
Apple rät von der Verwendung der SCNetworkReachability-Vorabprüfung ab und empfiehlt, die Verbindung zu versuchen. Bedingungen können sich zwischen Prüfung und Vorgang ändern, und positive Flags belegen niemals Proxy-Authentifizierung, TLS-Verifikation oder die Annahme des Ziels.
Das Ergebnis des Vorgangs melden
Lassen Sie das Ergebnis des HTTP-Clients zwischen Verbindungsfehler, Proxy-Aufforderung und Antwort der Anwendung unterscheiden. Eine passende URLSession-Konfiguration zum Warten auf Konnektivität kann einen Vorgang aufschieben, bis ein geeigneter Pfad existiert; Anmeldedaten liefert sie nicht.
Zeigen Sie Warte- oder Fehlerzustände für die Anfrage an, die der Benutzer gestellt hat. Beobachtungen des Netzwerkpfads bleiben nützliche Diagnose, sollten aber kein dauerhaftes Offline-Veto werden, das auf einer früheren Prüfung mit einer anderen Routing-Annahme beruht.