Читать «C# 4.0 полное руководство - 2011» онлайн - страница 631

Герберт Шилдт

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

Получает идентификатор URI конкретного запроса

Получает или устанавливает количество миллисекунд, в течение которых будет ожидаться ответ на запрос. Для установки бесконечного ожидания используется значение Timeout. Infinite Получает или устанавливает значение, которое определяет, используется ли для аутентификации устанавливаемый по умолчанию мандат. Если имеет логическое значение true, то используется устанавливаемый по умолчанию мандат, т.е. учетные данные пользователя, в противном случае этот мандат не используется

Класс WebResponse

В классе WebResponse инкапсулируется ответ, получаемый по запросу. Этот класс является абстрактным. В наследующих от него классах создаются отдельные его версии, поддерживающие конкретный протокол. Объект класса WebResponse обычно получается в результате вызова метода GetResponse (), определенного в классе WebRequest. Этот объект будет экземпляром отдельного класса, производного от класса WebResponse и реализующего конкретный протокол. Методы, определенные в классе WebResponse, сведены в табл. 26.3, а свойства, объявляемые в этом классе, — в табл. 26.4. Значения этих свойств устанавливаются на основании каждого запроса в отдельности. Открытые конструкторы в классе WebResponse не определяются.

Таблица 26.3. Наиболее часто используемые методы, определенные в классе WebResponse

Метод

Описание

public virtual void Close() *

public virtual Stream GetResponseStream()

Закрывает ответный поток. Закрывает также поток ввода ответа, возвращаемый методом

GetResponseStream()

Возвращает поток ввода, связанный с запрашиваемым URI. Из этого потока могут быть введены данные из запрашиваемого URI

Свойство

Описание

public virtual long

Получает или устанавливает длину принимаемого со

ContentLength { get; set; }

держимого. Устанавливается равным -1, если данные о длине содержимого недоступны

public virtual string

Получает или устанавливает описание принимаемого

ContentType { get; set; }

содержимого

public virtual

Получает или устанавливает коллекцию заголовков,

WebHeaderCollection Headers

связанных с URI

{ get; }

public virtual bool

Принимает логическое значение true, если запрос

IsFromCache { get; }

получен из кэша. А если запрос доставлен по сети, то принимает логическое значение false

public virtual bool

Принимает логическое значение true, если клиент

IsMutuallyAuthenticated {

и сервер опознают друг друга, а иначе — принимает

get; }

логическое значение false

public virtual Uri

Получает URI, по которому был сформирован ответ.

ResponseUri { get; }

Этот идентификатор может отличаться от запрашиваемого, если ответ был переадресован по другому URI

Классы HttpWebRequest и HttpWebResponse

Оба класса, HttpWebRequest и HttpWebResponse, наследуют от классов WebRequest и WebResponse и реализуют протокол HTTP. В ходе этого процесса в обоих классах вводится ряд дополнительных свойств, предоставляющих подробные сведения о транзакции по протоколу HTTP. О некоторых из этих свойств речь пойдет далее в настоящей главе. Но для выполнения простых операций в Интернете эти дополнительные свойства, как правило, не требуются.