
- •1 Создание серверного приложения
- •2 Создание клиентского приложения
- •3 Анализ возможностей приложения по обработке информации
- •4 Оформление отчета о лабораторной работе.
- •Лабораторная работу №2 Создание и анализ Web приложения архитектуры Web Broker
- •1Создание Web-модуля приложения
- •2Создание процедуры обработки события
- •3 Отладка приложения
- •4 Анализ возможностей приложения по обработке информации
- •5 Оформление отчета о лабораторной работе.
- •1Создание Web-модуля приложения
- •2Создание процедуры обработки события
- •3 Отладка приложения
- •4 Анализ возможностей много уровневого приложения
- •5 Оформление отчета о лабораторной работе.
- •Лабораторная работу №3 Создание и анализ asp.Net приложения работающего с базами данных.
- •1Создание серверного приложения
- •2Связывание данных
- •3Отладка приложения
- •4 Анализ возможностей приложения по обработке информации
- •5 Оформление отчета о лабораторной работе.
- •1Создание серверного приложения
- •3Связывание данных
- •4Отладка приложения
- •5 Анализ возможностей приложения по обработке информации
- •6 Оформление отчета о лабораторной работе.
- •Лабораторная работу №4 Создание и анализ приложения архитектуры Web Service
- •1Создание простой Web-службы
- •2Создания клиентской части Web-службы
- •3Организация доступа к Web-сервису из кода
- •4 Анализ возможностей приложения по обработке информации
- •5 Оформление отчета о лабораторной работе.
- •1Создание простой Web-службы
- •2Создания клиентской части Web-службы
- •3Организация доступа к Web-сервису из кода
- •5 Анализ возможностей много уровневого приложения
- •6 Оформление отчета о лабораторной работе.
1Создание простой Web-службы
Рассмотрим создание несложной Web-службы, умножающей два полученных дробных числа.
1.Новый проект создается командой главного меню File > New > Other (Файл > Создать > Другое), на вкладке Delphi for .NET Projects (Проекты Delphi.NET) выбирается значок ASP.NET Web Senvice Application (Приложение Web-службы ASP- NET).
После нажатия кнопки ОК, как обычно для Web-приложений, укажем название проекта, например WebServicel, и каталог для его хранения. В каталоге будет создана пара файлов, например WebServicel.asmx и WebServicel. pas.
2.В редакторе Delphi перейдем к файлу WebServicel.pas. По умолчанию в нем автоматически создан метод-пример HelloWorld, который войдет в открытый интерфейс нашей службы. Пока он скрыт в комментариях.
В интерфейсе:
TWebServicel = class(System.Web.Services.WebService)
public
constructor Create;
(*
// Sample Web Service Method
[WebMethod]
function HelloWorld: string; *)
end;
В реализации:
// Sample Web Service Method
// The following method is provided to allow for testing a new web service.
(*
function TWebServicel.HelloWorld: string;
begin
Result := 'HelloWorld';
end;
3. Снимем комментарии с обеих частей, после чего у нас окажется готовая заготовка Web-службы.
После компиляции в целях тестирования к ней можно обращаться из браузера, например, так
http://localhost/WebServiceApplicationl/WebServicel.asmx
Здесь считается, что проект размещен в виртуальном каталоге WebServiceApplication.1 Web-сервера. Отклик браузера, если настройки сервера выполнены правильно, будет показано в окне браузера.
В этом окне имеется все необходимое для тестирования нашей службы.
4.Добавим к нашей программе новый метод умножения. Назовем его WebMul. Два его параметра будут представлять дробные числа, а возвращать метод будет дробное значение, равное их произведению. Перед описанием заголовка метода в классе необходимо указать атрибут WebMethod, который сообщает компилятору, что следующий метод может использоваться через открытый интерфейс Web-службы:
TWebServicel = class(System.Web.Services.WebService
public
constructor Create;
// Sample Web Service Method
[WebMethod]
function HelloWorld: string;
[WebMethod]
function WebMul(x,у: Double): Double;
end;
Реализация:
function TWebServicel.WebMul(x, y: Double): Double;
begin
Result := x * у ;
end;
5.Обратившись из браузера по указанному выше адресу, рядом со ссылкой HelloWorld мы увидим новую ссылку WebMul. Такая удобная возможность интерактивного просмотра интерфейса Web-службы реализуется соответствующими модулями Web-сервера, ответственными за поддержку протокола SOAP и Web-служб. При щелчке на ссылке WebMul откроется окно проверки метода WebMul с автоматически сгенерированной тестовой формой и наглядными полями, совпадающими по названию с именами параметров тестируемого метода. В нижней его части будут подробно описаны форматы SOAP-запроса и SOAP-ответа, оба в формате XML.
POST /WebServiceApplicationl/WebServicel.asmx
HTTP/1.1
Host: localhost
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/WebMul"
<?xml version="l.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://scheraas.xmlsoap.org/soap/envelope/">
<soap:Body>
<WebMul xmlns="http://tempuri.org/"> <x>double</x> <y>double</y> </WebMul>
</soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8 Content-Length: length
<?xml version="l.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns :xsd="http: //www.v?3 .org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<WebMulResponse xmlns="http://tempuri.org/">
<WebMulResult>double</WebMulResult> </WebMulResponse>
</soap:Body>
</soap:Envelope>
Видно, что параметры х и у выступают как названия тегов, а их типы -как значения. По схожей схеме формируется и возвращаемое значение WebMul Result.
6. Введем произвольные значения, не забывая, что дробные числа в полях ввода надо указывать с запятой (если версия Windows русифицирована), и нажмем кнопку Invoke дистанционного вызова выбранного метода. Результат будет показан в браузере в наглядном формате XML.