Не работает ли Java& #39;s ProxySelector со сценариями автоматической настройки прокси?

Я хочу, чтобы моя программа на Java использовала системную конфигурацию прокси. Соответственно, я использовал код, найденный во многих местах, таких как этот ответ , чтобы установить java.net.useSystemProxiesв true и вызвать ProxySelector.getDefault().select(...), чтобы обнаружить прокси для конкретного хоста, к которому я хочу обратиться. Это отлично работает, когда я настроил один явный прокси-сервер в свойствах Интернета. Но если я установил «Использовать сценарий автоматической настройки», он всегда возвращает ПРЯМОЙ «прокси».

Я знаю, что скрипт работает, так как мой браузер может получить доступ к хостам, для которых он возвращает прокси-сервер, а без установленного скрипта он не может. Я даже попытался упростить скрипт до самого необходимого :

function FindProxyForURL(url, host)
{
    return "PROXY my.proxy.mydomain:3128";
}

, и он работает в моем браузере, но ProxySelector.getDefault().select(...)по-прежнему возвращает только DIRECT.

Я что-то пропустил? (Это на Java 1.6 и Windows 7, если это имеет значение.)

23
задан Community 23 May 2017 в 11:45
поделиться