HttpWebRequest один прокси и один нет

Простейшим подходом, вероятно, будет нормализация ваших данных и замена всех «запятых» и «ввода» пробелом, а затем разделение, как вы делали ранее, или использование split() из re с \s мета.

5
задан 14 April 2009 в 20:44
поделиться

3 ответа

For requests that require a proxy, yes, that'll work fine:

request.Proxy = myProxy;

For requests that wish to bypass a proxy, use:

request.Proxy = System.Net.GlobalProxySelection.GetEmptyWebProxy;

If you want to use the IE's default proxy (or if you've set a default proxy in your app/web.config), simply don't set the proxy, or set it to null:

request.Proxy = null;

More about possible HttpWebRequest.Proxy values here and GetEmptyWebProxy here.

10
ответ дан 18 December 2019 в 12:01
поделиться

Да, вы бы создали новый прокси-объект для каждого свойства в запросе, который вы хотите проксировать, и просто оставили бы его пустым для те, которые вы сделали. Для тех, кого вы не установите, они будут использовать значения прокси по умолчанию в конфигурации system.net в вашем app.config.

2
ответ дан 18 December 2019 в 12:01
поделиться

System.Net.GlobalProxySelection.GetEmptyWebProxy теперь устарела.

Я закончил с этой ситуацией

    private static void SetProxy(HttpWebRequest request)
    {
        if (AppConstants.UseProxyCredentials)
        {
            //request.Proxy = available in System.Net configuration settings
            request.Proxy.Credentials = Credentials.GetProxyCredentials();
        }
        else
        {
            request.Proxy = null;
            //request.Proxy.Credentials = n/a
        }
    }

С данными прокси в web.config:

<system.net>
  <defaultProxy>
    <proxy
      autoDetect="False"
      bypassonlocal="True"
      scriptLocation="http://www.proxyscript..."
      proxyaddress="http://proxyurl..." />
  </defaultProxy>
</system.net>
<system.web>
3
ответ дан 18 December 2019 в 12:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: