Пример Web-службы Add (Сложение)
Чтобы ознакомиться с архитектурой Web-служб, построенных на базе платформы Microsoft .NET, и протоколами, которые они используют, мы рассмотрим простую Web-службу. Она расположена в каталоге SimpleWebService. Web-служба Add (Сложение) складывает два числа. С целью облегчить восприятие материала, мы создадим Web-службу наиболее простым способом и не будем использовать шаблон проекта Web-службы на управляемом C++ (Managed C++ Web Service project template). Максимально упрощая реализацию данной службы, мы воспользуемся шаблоном приложения на основе библиотеки классов управляемого C++ (Managed C++ Class Library). Чтобы запустить пример SimpleWebService на выполнение, следуйте пошаговым инструкциям:
Откройте проект SimpleWebService\WebService\WebService. sin в среде Visual
Studio.NET. Постройте решение.
Скопируйте полученный в результате этого файл WebService.dll в каталог Simple-WebService\WebService\bin.
Несмотря на то, что все эти действия уже сделаны за вас, желательно, чтобы вы
проделали их самостоятельно.
В окне проводника Windows (Windows Explorer) щелкните правой кнопкой мыши
на каталоге SimpleWebService\WebService и выберите из контекстного меню команду
Properties (Свойства). В окне Properties (Свойства) перейдите на вкладку Web
Sharing (Совместное использование в Web). Откройте папку для совместного доступа,
указав в качестве псевдоимени SimpleWebService. Чтобы закрыть окно Properties
(Свойства), щелкните на ОК.
Просмотрите пример, для чего введите следующий унифицированный указатель информационного
ресурса (URL) Http://localhost/Simple\VebService/Add.asmx в адресной строке
вашего броузера. Его также можно открыть в среде Visual Studio.NET стандартным
способом. Данный проект сконфигурирован так, что при этом запустится Internet
Explorer (IE).
Дальше необходимо написать код и сохранить его в файле с расширением asmx
в подкаталоге или виртуальном подкаталоге корневого каталога информационного
сервера Internet (US). Таким образом мы создали простую Web-службу [По умолчанию
корневым каталогом является каталог \metpub\wwwroot. ]. Информационный сервер
Internet (US) использует понятие виртуального каталога. Это означает, что каталог,
в котором фактически расположены файлы, необходимые информационному серверу
Internet (IIS), не обязательно должен на самом деле находиться в корневом каталоге
информационного сервера Internet (IIS). Проще всего создать виртуальный каталог
следующим образом. Выделите нужный каталог в окне Проводника NT (NT Explorer).
Щелкните правой кнопкой мыши на каталоге и выберите из контекстного меню команду
Sharing (Совместное использование). Перейдите на вкладку WebSharing (Совместное
использование в Web) и создайте на базе данного каталога виртуальный каталог
информационного сервера Internet (US).
Файл Add.asmx содержит ссылку на класс Test (Тест), с помощью которого реализована
Web-служба. Этот файл нужно разместить в каталоге SimpleWebService.
<%@ WebService Class=Test %>
Файл WebService. h содержит класс Test (Тест), который является производным
от класса WebService, принадлежащего пространству имен System: :Web: :Services
(Система::Сеть::Службы). Метод, содержащийся в этом классе, может использоваться
в качестве метода Web-службы, если он имеет атрибут WebMethod, как показано
на примере метода Add (Сложение), реализованного в файле WebService. h.
// WebService.h
fusing <mscorlib.dll>
fusing <System.dll>
fusing <System.Web.dll>
fusing <Systern.EnterpriseServices.dll>
fusing <System.Web.Services.dll>
using namespace System;
// использование пространства имен Система;
using namespace System::Web;
// использование пространства имен Система::Сеть;
using namespace System::Web::Services;
// использование пространства имен Система::Сеть::Службы;
public _gc class Test : public WebService
{
public:
[WebMethod]
long Add(long x, long y) {
return x + y; }
};
Этот файл находится в подкаталоге WebService каталога SimpleWebService данной
главы. Создайте на базе каталога WebService виртуальный каталог с псевдоименем
(псевдонимом) SimpleWebService [Как указывается в главе 10 "ASP NET и Web-формы",
проще всего создать виртуальный каталог с помощью Проводника Windows (Windows
Explorer). Щелкните правой кнопкой мыши на нужном каталоге и из контекстного
меню выберите команду Properties (Свойства). На вкладке Web Sharing (Совместный
доступ в Web), вы можете открыть папку для совместного доступа и присвоить ей
псевдоимя (псевдоним). ]. После построения службы Add (Сложение) в виртуальном
каталоге WebService создайте каталог bin и скопируйте в него сборку WebService.dll.
Информационный сервер Internet (US) автоматически ищет требуемые файлы в этом
каталоге.
|