logo
[ПСП] / lab22

Свойство Page. Request

Множество web-приложений построено по одному и тому же принципу: клиент заходит на web-сайт, заполняет форму HTML своей пользовательской информа­цией и нажимает на кнопку Submit этой формы, чтобы передать информацию на сервер. В большинстве случаев в теге форм используются атрибуты action и method. Первый определяет адрес получателя информации на сервере, а второй — метод передачи информации:

<form name=MainForm action="http://localhost/default.asp" method=get ID=Form1>

В ASP.NET свойство Page.Request позволяет получить доступ к данным, отправ­ленным пользователем в виде запроса HTTP. Если разобраться, что делает это свой­ство, то выяснится, что оно взаимодействует с объектом класса HttpRequest. Некоторые наиболее важные свойства этого класса представлены в табл. 14.6. Если вы работали с классическими ASP, то они покажутся вам очень знакомыми.

Таблица 14.6. Свойство типа HttpRequest

Свойство

Описание

ApplicationPath

Возвращает виртуальный путь к приложению, выполняющемуся на сервере

Browser

Позволяет получить информацию о возможностях браузера клиента

ContentType

Определяет тип содержимого MIME для входящего запроса. Это свойство доступно только для чтения

Cookies

Возвращает набор клиентских cookie

FilePath

Возвращает виртуальный путь к запрашиваемому файлу. Это свойство доступно только для чтения

Files

Возвращает набор файлов, загруженных клиентов (формат MIME для файлов из нескольких частей)

Filter

Позволяет получить или установить фильтр, используемый для чтения потока входящих данных

Form

Позволяет получить набор переменных Form.

Headers

Позволяет получить набор заголовков HTTP

HttpMethod

Определяет метод передачи данных, используемый клиентом (GET, POST). Это свойство доступно только для чтения

IsSecureConnection

Позволяет получить информацию о том, является ли установленное соединение защищенным (с применением SSL). Это свойство доступно только для чтения

Params

Возвращает комбинированный набор QueryString + Form + ServerVariable + + Cookie

QueryString

Возвращает набор переменных QueryString

RawUrl

Возвращает текущий запрос клиента в виде адреса URL

Requesttype

Определяет метод передачи данных, используемых клиентом (GET, POST)

ServetVariables

Возвращает набор переменных web-сервера

UserHostAddress

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

UserHostName

Возвращает имя DNS компьютера удаленного клиента

При помощи этих свойств можно получить любую возможную информацию о запросе пользователя. Мы уже использовали этот объект ранее, не очень об этом догадываясь. Например, когда мы получали информацию о браузере пользователя при помощи строки следующего вида:

<b>You Are: </b><%= Request.ServerVariables[“HTTP_USER_AGENT"] %>

реально мы обращались к свойству возвращаемого объекта HttpRequest:

<b>You Are: </b>

<%

HttpRequest r;

r = this.Request;

Response.Write(r.ServerVariables["HTTP_USER_AGENT"]);

%>

Как получать информацию о передаваемых пользователем данных привычны­ми средствами С#, мы уже разобрались. Однако нам нужно как-то на них отреагировать. И в этом нам поможет свойство Page.Response и соответствующий ему класс HttpResponse.