Существуют различные клиенты ArcGIS, которые можно использовать для редактирования или просмотра объектов в сервисе объектов, такие как веб-клиенты или ArcGIS Pro.
Стандартные веб-клиенты ArcGIS
Map Viewer и шаблоны в ArcGIS Online и ArcGIS Enterprise обеспечивают базовую функциональность для редактирования сервисов объектов. Без программирования вы можете быстро создать веб-приложение редактирования, которое позволит пользователям добавлять, обновлять и удалять географические объекты из базы данных.
Например, при использовании стандартных приложений вы можете выполнять следующее:
- Редактировать слои.
- Отслеживать правки.
- Управлять доступом к объектам при помощи управления доступом на основе владения.
- Запретить пользователям редактирование геометрии объектов.
Вы можете добавить сервисы объектов в Map Viewer, используя URL-адрес Services Directory сервиса ArcGIS Server. После создания и сохранения карты, содержащей сервис объектов, вы можете опубликовать ее в вашей организации, встроить в веб-сайт или вставить ссылку (URL) на приложение в email, блоге или на веб-сайте. Созданные вами карты также можно развернуть с использованием шаблонов приложений, доступных в вашей организации. Это шаблоны полностью настраиваемые.
Также можно добавить сервисы объектов в виде элементов на портал ArcGIS Enterprise или в ArcGIS Online и предоставить к ним доступ для других пользователей организации.
клиенты ArcGIS Maps SDK for JavaScript
ArcGIS Maps SDK for JavaScript обеспечивает самые передовые возможности веб-редактирования и варианты настройки. Если вы уверенно программируете с использованием этого API, вы можете адаптировать процесс редактирования к конкретной задаче, цели или организационной стратегии. Например, с помощью ArcGIS Maps SDK for JavaScript вы можете делать следующее:
- Редактировать только выбранные слои.
- Отслеживать правки.
- Управлять доступом к объектам при помощи управления доступом на основе владения.
- Запретить пользователям редактирование геометрии объектов.
- Создавать, удалять и изменять связанные версии базы геоданных "на лету".
- Редактировать картографические представления.
Получение конечной точки REST сервиса объекта
Вы можете получить точку доступа REST или URL-адрес сервиса объектов, перейдя к соответствующему сервису в ArcGIS Server Services Directory. Например, по умолчанию URL-адрес сервиса объектов в Services Directory – это https://gisserver.example.com:6443/arcgis/rest/services/folder_name/service_name/FeatureServer.
Чтобы получить доступ к определенному слою в сервисе объектов, добавьте к URL-адресу целое число, отсчитываемое от нуля. Например, добавление /0 к URL-адресу обеспечивает доступ к первому слою сервиса; добавление /1 к URL-адресу обеспечивает доступ ко второму слою сервиса.
Работа с сервисами объектов в ArcGIS Pro
Вы можете добавлять сервис объектов к ArcGIS Pro для просмотра и редактирования данных в них.
Рабочий процесс редактирования в ArcGIS Pro принципиально отличается от процесса редактирования сервиса объектов через веб-приложение. Подробнее см. в разделе ArcGIS Pro Редактирование сервисов объектов.
Использование синхронизации с сервисами объектов
К сервисам объектов относятся операции, которые поддерживают рабочие процессы автономного редактирования. В отсутствии подключения клиент (например, мобильное устройство) может вносить изменения локально, а затем, при переподключении клиента к сервису, синхронизировать изменения с сайтом ArcGIS Server. Эта возможность, называемая синхронизацией, доступна через ArcGIS REST API.
Более подробная информация об использовании синхронизации с сервисами объектов приведена в соответствующем разделе справки ArcGIS REST API.
Увеличение скорости отображения сервисов объектов
Когда клиенты отправляют запросы к ArcGIS Server для отображения сервиса объектов, ответ сервера обычно кэшируется браузером и повторно используется в течение некоторого периода времени. Однако в зависимости от использования сервиса объектов и связанных с ним данных в приложении, может потребоваться изменить время использования кэшированного ответа. Это можно сделать с помощью добавления свойства cacheControlMaxAge к JavaScript Object Notation (JSON) вашего сервиса.
Как используется свойство cacheControlMaxAge
Ответы сервиса объектов ArcGIS Server содержат тег объекта (ETag) и заголовок Cache-Control. Значение заголовка ETag является уникальным идентификатором ответа. Заголовок Cache-Control имеет значение максимальной длительности, сообщающее браузеру максимальный период времени, в течение которого можно повторно использовать кэш. Это значение управляется свойством cacheControlMaxAge.
При повторе предыдущего запроса, когда максимальное время действия кэша еще не прошло, браузер использует кэшированный ответ, не отправляя запрос к серверу. Если максимальное время действия кэша уже превышено, браузер должен отправить на сервер запрос и присвоить ответу в кэше заголовок IF-NONE-MATCH с соответствующим значением ETag. ArcGIS Server оценивает запрос, и использует значение ETag для определения изменения запроса. Если ответ сервера отличается от копии в браузере, сервер отправит браузеру новый ответ. Если ответ сервера идентичен копии в браузере, сервер сообщает браузеру, что можно продолжать использовать ответ в кэше.
Установка значения для параметра cacheControlMaxAge
Чтобы указать, как долго браузер может использовать кэшированный ответ, задайте свойство cacheControlMaxAge. Это свойство может быть задано для отдельных кэшей сервиса. Снижая для ArcGIS Server необходимость отправки полного ответа, вы делаете кэш вэб браузера более эффективным, оптимизируете приложения и экономите пропускную способность канала.
Значение по умолчанию для сервиса объектов - 0 с. Это означает, что браузер всегда повторно отправляет запрос, а ArcGIS Server обрабатывает запрос и отправляет полный ответ браузеру при изменении содержания. Это значение подходит для большинства приложений.
Для сервисов объектов, данные которых меняются нечасто, рекомендуется увеличить значение по умолчанию до 30 дней (2 592 000 секунд) или более, чтобы сократить сетевой трафик.
Чтобы добавить свойство cacheControlMaxAge в сервис объектов и указать его значение по умолчанию, выполните следующие действия:
- В веб-браузере откройте ArcGIS Server Administrator Directory и войдите под именем пользователя с правами администратора.
Адрес URL имеет формат https://gisserver.example.com:6443/arcgis/admin.
- Щелкните сервисы и выберите картографический сервис, который вы хотите изменить, в списке Сервисы.
Если сервис не отображается в списке, он может располагаться в папке под Корневой папкой.
- Прокрутите вниз страницу сервиса объектов и щелкните редактировать.
Откроется диалоговое окно Свойства сервиса.
- Вставьте свойство cacheControlMaxAge в файл JSON.
Место вставки свойства зависит от того, ссылается ли сервис объектов на зарегистрированные данные или является размещенным сервисом объектов.
- Для сервиса объектов, который ссылается на зарегистрированный источник данных, найдите раздел "extensions" JSON. Найдите подраздел, содержащий текст "typeName": "FeatureServer", и вставьте свойство cacheControlMaxAge в параметр properties этого подраздела.
- Для размещенного сервиса объектов найдите раздел "jsonProperties" Service Properties JSON. Добавьте свойство cacheControlMaxAge в этот раздел.
- Установите свойство cacheControlMaxAge для желаемого значения (в секундах).
В следующем примере показано задание свойства cacheControlMaxAge на 30 дней (2592000 секунд) для сервиса объектов, который ссылается на зарегистрированное хранилище данных:
{ "typeName": "FeatureServer", "capabilities": "Query,Create,Update,Delete,Uploads,Editing", "enabled": "true", "maxUploadFileSize": 0, "allowedUploadFileTypes": "", "properties": { "cacheControlMaxAge": "2592000",} }В следующем примере показано задание свойства cacheControlMaxAge на 30 дней (2592000 секунд) для размещенного сервиса объектов.
"jsonProperties": {** "currentVersion": 11.5, "serviceDescription": "", "maxRecordCount": 2000, "cacheControlMaxAge": "2592000", } - Щелкните Сохранить изменения.
На странице сервиса объектов в Administrator Directory ArcGIS Server, проверьте, что свойство cacheControlMaxAge и указанное для него значение отображаются в разделе Свойства.
Предоставление HTML в текстовых полях
При редактировании сервиса объектов в клиентском приложении вы можете использовать HTML-объекты и атрибуты в текстовых полях. Например, при редактировании объекта в веб-клиенте, вы можете ввести HTML в поле комментариев.
Примечание:
По умолчанию в текстовых полях сервиса объектов можно использовать только HTML-записи и атрибуты, перечисленные в таблице ниже. При попытке добавить неподдерживаемый объект или атрибут, возвращается сообщение об ошибке.
Если для рабочего процесса требуются неподдерживаемые HTML-записи и атрибуты, необходимо отключить свойство Фильтровать веб-содержимое в сервисе объектов. Доступ к этому свойству можно получить через диалоговое окно Расширенные опции сервиса объектов в ArcGIS Server Manager. Дополнительную информацию см. в разделе Редактирование свойств сервиса в Server Manager.
| Объект HTML | HTML-атрибут (если применимо) |
|---|---|
<a> | href, target, style |
<b> | |
<br> | |
<div> | style, align |
<em> | |
<font> | size, color, style, face |
http, https protocol | src, href |
<i> | |
<img> | src, width, height, alt, border, style |
<li> | |
mailto: protocol | src, href |
<ol> | |
<span> | стиль |
<strong> | |
<table> | width, height, cellpadding, cellspacing, border, style |
<tbody> | |
<td> | height, width, valign, align, colspan, rowspan, nowrap, style |
<tr> | height, valign, align, style |
<u> | |
<ul> |