Вы можете использовать расширения серверных объектов (SOE) в любом приложении, которое может отправлять HTTP-запрос на сервер и анализировать ответ. Входные и выходные данные SOEs представляют собой простые типы, такие как числа, текстовые строки и объекты XML и JSON. Использующему приложению не нужно иметь никакого представления об интерфейсах API, используемых для реализации SOE. Ему необходимо подготовить входные данные для отправки в SOE, а также проанализировать и понять выходные данные, возвращаемые из SOE.
Вы часто будете тестировать свои SOE в директории ArcGIS REST Services (при условии, что вы используете REST SOE), а затем писать код для использования SOE в вашем клиентском приложении.
Проверка SOE в директории сервисов Services Directory
Тот факт, что вы отправляете простые типы в свои SOE, позволяет вам тестировать свои SOE веб-сеовиса REST в директории сервисов. После включения SOE на ваших картографических сервисах перейдите на страницу сервиса в Директории сервисов. В нижней части страницы вы увидите SOE, перечисленные в разделе Поддерживаемые расширения. (Если вы ее не видите, убедитесь, что администратор ArcGIS Server очистил кэш REST.)
Если вы щелкнете на SOE в Директории сервисов, то сможете щелкнуть и изучить ресурсы и операции, которые вы предоставили. Щелкните операцию, и вы увидите несколько полей ввода, которые можно использовать для проверки запросов и ответов SOE. Вы должны получить обратно простой ответ в формате JSON или HTML.
Использование вашей SOE в клиентском приложении
Когда вы предоставляете свою SOE в качестве веб-сервиса REST, вы можете использовать ее в веб-интерфейсах Esri и мобильных API. Независимо от того, какой API вы используете, для работы с вашим веб-сервисом SOE требуется следующее:
-
Выполнение запроса из веб-сервиса -- Включает в себя создание списка параметров и отправку заполненного URL-адреса на сервер.
-
Выполнение чего-либо с ответом -- Требует понимания формата ответа и знания того, как анализировать информацию, чтобы сделать что-то полезное в вашем приложении.
Хотя шаблоны кодирования схожи, классы, которые вы используете для работы с SOE, различаются в ArcGIS Maps SDK for JavaScript. Например, в API вы настраиваете переменную с помощью JSON, которая содержит все входные параметры для вашего SOE. Затем вы используете метод esri.request() для выполнения вызова веб-сервиса. Ответ представляет собой объект JSON.