Использование автоматической настройки прокси-сервера из настроек IE в .Net

У меня возникли проблемы с настройкой автоматической настройки прокси-сервера (PAC) в настройках IE для работы в ожидании с использованием .Net WebRequest.

Согласно этой статье:
Обнаружение прокси Возьмите пользователей с автоматической загрузкой в ​​.NET.

Системный прокси должен быть установлен по умолчанию для каждого WebRequest.

Как выглядит файл proxy.js pac:

function FindProxyForURL(url, host)
{
  return "PROXY ProxyServerName:3118; DIRECT;";
}

Я также посмотрел этот пост: Как установить прокси-сервер по умолчанию для использования учетных данных по умолчанию?

Что предлагает добавить это в app.config:

<system.net>
  <defaultProxy useDefaultCredentials="true" />
</system.net>

Добавление этого не помогло.

Я создал небольшое консольное приложение, чтобы проверить это. Вот он:

static void Main(string[] args)
{
    HttpWebRequest request = null;
    try
    {               
        String resolvedAddress = WebRequest.DefaultWebProxy.GetProxy(new Uri("http://www.google.com")).ToString();
        Console.WriteLine("Proxy for address is: " + resolvedAddress);

        Uri m_URLToTest = new Uri("http://www.google.com");
        request = WebRequest.Create(m_URLToTest) as HttpWebRequest;
        request.Method = "GET";
        request.KeepAlive = false;
        request.Timeout = 5000;
        request.Proxy = WebRequest.DefaultWebProxy;
        WebResponse response = request.GetResponse();
        StreamReader reader = new StreamReader(response.GetResponseStream());
        string message = reader.ReadToEnd();
    }
    catch (Exception ex)
    {
        Console.Write("Exception");
    }

}

Выход: Прокси для адреса http://www.google.com

вместо прокси для адреса: ProxyServerName: 3118

Это происходит только при использовании автоматической конфигурации script...

Я что-то пропустил? Пожалуйста, помогите!

Ответ 1

Найден решение!

Очень важно, чтобы тип mime файла PAC был: [Content-type: application/x-ns-proxy-autoconfig]

Другие типы mime могут не работать.

Убедитесь, что с помощью fiddler2 (с отключенным кешем) используется тип mime. В некоторых конфигурациях может отображаться Content-Type: text/plain, что плохо.

Ответ 2

Убедитесь, что вы отметили возможности Internet (Client & Server) и Private Networks (Client & Server) в Package.appxmanifest.

См. это

[Источник]