На этом шаге мы рассмотрим реализацию ответа серверного приложения.
Теперь перейдем ко второй части нашей задачи - получению данных от клиента и их публикации на сервере.
Публиковать, на самом деле ничего не будем, просто прочитаем данные и вернем полученную информацию клиенту, чтобы быть уверенными -
мы все прочитали правильно. Чтобы выполнить эту задачу нам надо создать заготовку приложения Web-сервера, что
мы уже делали и как это делать - вы знаете. Тип приложения можете выбрать сами; по умолчанию везде
далее предполагается тип CGI Stand-alone Executable. После того, как создано новое приложение, создаем в нем объект-действие
с именем заданным по умолчанию, заходим в его обработчик события OnAction и добавляем в него следующие строки:
procedure TWebModule1.WebModule1WebActionItem1Action(Sender: TObject; Request: TWebRequest; Response: TWebResponse; var Handled: Boolean); begin Response.Content := ' <html><head><title> ' + 'Подтверждение получения данных</title></head><body> '; Response.Content := Response.Content + '<h1>Подтверждение получения данных. </h1>'; Response.Content := Response.Content + '<p>Ваше сообщение добавлено в конференцию.'; Response.Content := Response.Content + '<p>ваше имя: '+ Request.ContentFields.Values['name']; Response.Content : = Response.Content + '<p>тема сообщения: '+ Request.ContentFields.Values['subject']; Response.Content := Response.Content + '<p>ваш e-mail: '+ Request.ContentFields.Values['email']; Response.Content := Response.Content + '<p>текст сообщения:<p> '+ Request.ContentFields.Values['body']; Response.Content := Response.Content + '</body></html>'; end;
Полный текст приложения можно взять TStrings и для работы с ними вам нужно использовать их свойства Strings или Values. Второй вариант удобнее,
поскольку обратившись к очередному параметру запроса по имени, вы получаете значение этого параметра, тогда как из свойства Strings вы
будете извлекать строки вида "имя_параметра=значение_параметра". В нашем случае, для параметра subject мы могли
бы получить строку вида "subject=тема_сообщения". Примеры с заполненной формой и
ответом, полученным клиентом от нашего серверного приложения, приведены на рисунках 1 и 2.
Рис.1. Внешний вид формы
Рис.2. Подтверждение серверного приложения
На следующем шаге мы продолжим создавать серверные приложения.