Програма macOS, що використовує URLSession, зазвичай може дотримуватися політики проксі машини, не вимагаючи від користувача повторно вводити той самий проксі. Apple документує, що типове значення connectionProxyDictionary використовує системні налаштування.

Менеджер завантажень може цілком обґрунтовано запропонувати власне налаштування проксі. Зробіть вибір явним: «Використовувати системні налаштування» і навмисно налаштований сеанс — це різні режими. Копіювання однієї поточної адреси проксі створює знімок маршруту.

Застосуйте власну політику перед створенням сеансу. URLSession копіює надану конфігурацію; зміна початкового об'єкта конфігурації згодом не оновлює наявний сеанс. Коли користувач змінює налаштування проксі програми, організуйте новий сеанс для нової політики та вирішіть, як запити, що вже виконуються, мають завершитися або бути скасовані.

Для підтримуваних цілей розгортання Apple тепер рекомендує proxyConfigurations замість старішого інтерфейсу словника, оскільки він підтримує безпечні типи проксі та ретрансляції. Перед вибором цього інтерфейсу перевірте доступність API щодо мінімальної версії операційної системи програми.

Ця поведінка належить URLSession. Пакету, який відкриває власні сокети або використовує іншу реалізацію HTTP, потрібна власна підтримка проксі. Визначте цей транспорт перед зміною системних налаштувань.

Схожі статті