Прочитать на английском

Поделиться через


WebProxy Класс

Определение

Содержит параметры прокси-сервера HTTP для класса HttpClient.

public class WebProxy : System.Net.IWebProxy, System.Runtime.Serialization.ISerializable
[System.Serializable]
public class WebProxy : System.Net.IWebProxy, System.Runtime.Serialization.ISerializable
[System.Serializable]
public class WebProxy : System.Runtime.Serialization.ISerializable
Наследование
WebProxy
Атрибуты
Реализации

Примеры

В следующем примере кода настраивается HttpClient экземпляр с экземпляром WebProxy . Экземпляр HttpClient использует прокси-сервер для подключения к внешним интернет-ресурсам. (Пример, демонстрирующий использование функции WPAD, см. в документации по классу IWebProxyScript .)

WebProxy proxyObject = new WebProxy("http://proxyserver:80/", true);

// HttpClient lifecycle management best practices:
// https://learn.microsoft.com/dotnet/fundamentals/networking/http/httpclient-guidelines#recommended-use
HttpClient client = new HttpClient(new HttpClientHandler
{
    Proxy = proxyObject
});

Комментарии

Класс WebProxy содержит параметры прокси-сервера, которые экземпляры используют для определения того, HttpClient используется ли веб-прокси для отправки запросов. Глобальные параметры веб-прокси можно указать в файлах конфигурации компьютера и приложения, а приложения могут использовать экземпляры WebProxy класса для настройки использования веб-прокси. Класс WebProxy является базовой реализацией IWebProxy интерфейса.

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

Каждый из этих методов предоставляет WebProxy экземпляр, который можно дополнительно настроить. Разница между ними заключается в том, как экземпляр инициализируется перед его возвратом в приложение. Конструктор WebProxy возвращает экземпляр WebProxy класса со свойством Address , равным null. Если запрос использует WebProxy экземпляр в этом состоянии, для отправки запроса не используется прокси-сервер.

Метод GetDefaultProxy возвращает экземпляр WebProxy класса со свойствами Address, BypassProxyOnLocalи BypassList , заданными значениями, используемыми локальным компьютером.

Метод Select возвращает экземпляр WebProxy класса со свойствами, заданными в соответствии с сочетанием параметров Интернета и файла конфигурации.

Класс поддерживает автоматическое WebProxy обнаружение и выполнение скриптов конфигурации прокси-сервера. Эта функция также называется автообнаружением веб-прокси (WPAD). При использовании автоматической конфигурации прокси-сервера необходимо найти, скачать, скомпилировать и запустить скрипт конфигурации, который обычно называется Wpad.dat. В случае успешного выполнения этих операций скрипт возвращает прокси-серверы, которые можно использовать для запроса.

Конструкторы

WebProxy()

Инициализирует пустой экземпляр класса WebProxy.

WebProxy(SerializationInfo, StreamingContext)
Устаревшие..

Инициализирует экземпляр класса WebProxy и использованием ранее сериализованного содержимого.

WebProxy(String)

Инициализирует новый экземпляр класса WebProxy с заданным универсальным кодом ресурса.

WebProxy(String, Boolean)

Инициализирует новый экземпляр класса WebProxy с указанным URI и параметром обхода.

WebProxy(String, Boolean, String[])

Инициализирует новый экземпляр класса WebProxy с указанным URI, настройками для пропускаемых адресов и списком пропускаемых URI.

WebProxy(String, Boolean, String[], ICredentials)

Инициализирует новый экземпляр класса WebProxy с указанным URI, настройками для пропускаемых адресов, списком пропускаемых URI и учетными данными.

WebProxy(String, Int32)

Инициализирует новый экземпляр класса WebProxy с указанным узлом и номером порта.

WebProxy(Uri)

Инициализирует новый экземпляр класса WebProxy из указанного экземпляра Uri.

WebProxy(Uri, Boolean)

Инициализирует новый экземпляр класса WebProxy с экземпляром Uri и настройками для пропускаемых адресов.

WebProxy(Uri, Boolean, String[])

Инициализирует новый экземпляр класса WebProxy с указанным экземпляром Uri, настройками для пропускаемых адресов и списком пропускаемых URI.

WebProxy(Uri, Boolean, String[], ICredentials)

Инициализирует новый экземпляр класса WebProxy с указанным экземпляром Uri, настройками для пропускаемых адресов, списком пропускаемых URI и учетными данными.

Свойства

Address

Возвращает или задает адрес прокси-сервера.

BypassArrayList

Возвращает список адресов, не использующих прокси-сервер.

BypassList

Возвращает или устанавливает массив адресов, не использующих прокси-сервер.

BypassProxyOnLocal

Возвращает или задает значение, которое указывает, следует ли обходить прокси-сервер при работе с локальными адресами.

Credentials

Получает или задает учетные данные для отправки на прокси-сервер для проверки подлинности.

UseDefaultCredentials

Возвращает или задает значение Boolean, которое управляет отправкой учетных данных DefaultCredentials вместе с запросами.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetDefaultProxy()
Устаревшие..
Устаревшие..
Устаревшие..

Считывает параметры браузера нединамического прокси-сервера.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetObjectData(SerializationInfo, StreamingContext)

Заполняет объект SerializationInfo данными, необходимыми для сериализации целевого объекта.

GetProxy(Uri)

Возвращает URI, использующий прокси-сервер, для запроса.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
IsBypassed(Uri)

Показывает, используется ли данный прокси-сервер для заданного узла.

MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

ISerializable.GetObjectData(SerializationInfo, StreamingContext)

Создает данные и контекст сериализации, которые будут использоваться в системе для сериализации объекта WebProxy.

Применяется к

Продукт Версии
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1