Une app macOS qui utilise URLSession peut normalement suivre la stratégie de proxy de la machine sans demander à l'utilisateur de saisir à nouveau le même proxy. Apple documente que la valeur par défaut de connectionProxyDictionary utilise les réglages du système.

Un gestionnaire de téléchargements peut raisonnablement proposer sa propre préférence de proxy. Rendez le choix explicite : « Utiliser les réglages du système » et une session délibérément configurée sont deux modes différents. Copier une adresse de proxy actuelle crée un instantané de la route.

Appliquez une stratégie personnalisée avant de créer la session. URLSession copie la configuration fournie ; modifier ensuite l'objet de configuration d'origine ne met pas à jour la session existante. Lorsqu'un utilisateur change la préférence de proxy de l'app, organisez une nouvelle session pour la nouvelle stratégie et décidez comment les requêtes déjà en cours doivent se terminer ou être annulées.

Pour les cibles de déploiement prises en charge, Apple recommande désormais proxyConfigurations plutôt que l'ancienne interface à dictionnaire, car elle prend en charge les types de proxy et de relais sécurisés. Vérifiez la disponibilité de l'API par rapport à la version minimale du système d'exploitation de l'app avant de choisir cette interface.

Ce comportement relève d'URLSession. Un paquet qui ouvre ses propres sockets ou utilise une autre implémentation HTTP a besoin de sa propre prise en charge du proxy. Identifiez ce transport avant de modifier les réglages du système.

Articles similaires