7.6. Сервисы¶
При создании ресурсов автоматически генерируются ссылки, по которым можно подключить данные в сторонние приложения:
Для векторного слоя создаётся ссылка на MVT тайлы;
Для стиля векторного или растрового слоя, веб-карты и WMS-слоя создаётся ссылка на TMS;
Также можно создавать сервисы, которые обеспечивают доступ к данным по стандартным протоколам:
7.6.1. Векторные тайлы MVT¶
При создании векторного слоя автоматически генерируется ссылка, с помощью которой загруженные данные можно подключить в формате MVT (Map Vector Tiles, спецификация).
Преимущества формата MVT¶
Представление MVT позволяет хранить и передавать большие объёмы географических данных в компактном виде. Это делает его особенно полезным для веб-карт и мобильных приложений, где использование сетевых ресурсов и быстрый доступ к данным являются ключевыми.
Главные преимущества формата:
Скорость отрисовки данных;
Динамичные подписи и элементы карты;
Широкие и гибкие возможности по настройке стилей данных (фильтры отображения по масштабу, временны́м или иным данным).
Каждый тайл является самодостаточным и содержит все необходимые данные для отображения конкретного уровня масштабирования (zoom level) определённого прямоугольного региона на карте. Данные организованы в слои, которые могут содержать разные типы геометрии и атрибуты.
MVT поддерживается различными библиотеками и инструментами для чтения, записи и отображения тайлов:
библиотеки Mapbox GL, OpenLayers, Leaflet,
инструменты для создания и обработки MVT-тайлов, такие как Tippecanoe и Mapbox Studio.
Формирование ссылки MVT¶
При создании векторного слоя в NextGIS Web автоматически генерируется ссылка типа:
Жирным выделены URL-адрес Веб ГИС и номер ресурса (векторного слоя).
Такую ссылку можно использовать в сторонних веб-приложениях и конструкторах карт. Ссылка передаёт данные о слое, стиль для слоя настраивается на стороне клиента.
Ссылка расположена на странице ресурса в разделе «Внешний доступ».

Рис. 7.45. Ссылка на векторные тайлы MVT на странице ресурса¶
Подключение с помощью библиотеки NextGIS Frontend¶
Достаточно знать только URL-адрес вашей Веб ГИС и номер ресурса, чтобы подключить векторный слой в виде MVT в ваше приложение. Для этого используются разработанные нашей командой JS-библиотеки.
Все библиотеки доступны в открытом сервисе NextGIS Frontend.
Там же можно найти примеры использования библиотек. Возьмём один из таких примеров, чтобы отобразить наш векторный слой.
URL Веб ГИС и номер ресурса указываются в соответствующих строках.
При открытии HTML-страницы мы увидим карту. Настроить дополнительный функционал можно также с помощью NextGIS Frontend.
Чтобы данные из вашей Веб ГИС отображались во внешних приложениях, надо открыть доступ к слою на чтение в настройках в Веб ГИС. Либо можно указать данные для входа в Веб ГИС в само веб-приложение.
В настройках Веб ГИС нужно задать свои настройки CORS.
Подключение MVT из NextGIS Web в QGIS¶
Предоставляемую NextGIS Web ссылку на векторные тайлы можно добавить в QGIS. Таким образом вы сможете использовать представление векторного слоя из вашей Веб ГИС в настольном приложении.
Чтобы подключить тайлы, выберить в меню добавления слоя в QGIS «Добавить векторный тайловый слой».
Такой слой можно использовать как подложку, для него можно настраивать стиль.
Работает идентификация объектов с описанием атрибутов.
7.6.2. Сервис TMS¶
NextGIS Web является сервером TMS. Соответственно подключить созданные в нем слои/стили можно в любом клиентском ПО, поддерживающем протокол TMS. Для этого нужно знать URL сервиса TMS.
Сервис TMS автоматически создаётся для следующих типов ресурсов:
Векторный стиль
Растровый стиль
Слой WMS
Веб-карта
Ссылка располагается на странице ресурса в разделе «Внешний доступ»:
Ссылка формируется следующим образом, пример:
Благодаря такой ссылке любой слой (стиль), созданный в Веб ГИС, можно подключать как подложку (базовую карту).
Для использования TMS через утилиты GDAL нужно создать для него файл XML и подставить эту ссылку в строку ServerUrl
примера ниже. Всё остальное остаётся неизменным.
<GDAL_WMS>
<Service name="TMS">
<ServerUrl>https://demo.nextgis.ru/api/component/render/tile?z={z}&x={x}&y={y}&resource=234</ServerUrl>
</Service>
<DataWindow>
<UpperLeftX>-20037508.34</UpperLeftX>
<UpperLeftY>20037508.34</UpperLeftY>
<LowerRightX>20037508.34</LowerRightX>
<LowerRightY>-20037508.34</LowerRightY>
<TileLevel>18</TileLevel>
<TileCountX>1</TileCountX>
<TileCountY>1</TileCountY>
<YOrigin>top</YOrigin>
</DataWindow>
<Projection>EPSG:3857</Projection>
<BlockSizeX>256</BlockSizeX>
<BlockSizeY>256</BlockSizeY>
<BandsCount>4</BandsCount>
<Cache />
</GDAL_WMS>
7.6.3. Сервис OGC API Features¶
Загруженные в Веб ГИС векторные данные можно опубликовать с помощью протокола OGC API Features. Это позволяет редактировать их через сторонние приложения.
Создание сервиса OGC API Features¶
Настройка сервиса OGC API Features осуществляется так же, как для WFS-сервиса.
NextGIS Web является сервером OGC API Features - может публиковать сервисы OGC API Features на базе векторных слоёв. Используя эти сервисы, сторонние программы могут изменять векторные данные на сервере. Поддерживаемые версии протокола OGC API Features: 1.0.0.
Для развёртывания сервиса OGC API Features нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Сервис OGC API Features. (Рис. 7.46.).

Рис. 7.46. Выбор действия «Сервис OGC API Features»¶
На вкладке Ресурс указывается наименование сервиса (Рис. 7.47.). Поле «Ключ» предназначено для разработчиков, заполенять его не обязательно.

Рис. 7.47. Наименование Сервиса OGC API Features¶
На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 7.48.)

Рис. 7.48. Описание Сервиса OGC API Features¶
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 7.49.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.

Рис. 7.49. Метаданные Сервиса OGC API Features¶
Вкладка «Сервис OGC API Features» отвечает за слои, включаемые в сервис (Рис. 7.50.). Для каждого добавленного слоя нужно указать число возвращаемых из базы объектов. По умолчанию это значение равно 1000. Если в этом поле значение убрать совсем, то ограничение будет снято и будут передаваться все объекты. Однако это может привести к значительной нагрузке на сервер и значительным задержкам при передаче больших объемов данных.

Рис. 7.50. Окно параметров сервиса OGC API Features¶
Использование сервиса OGC API Features¶
После создания ресурса вам будет доступен URL сервиса OGC API Features, который вы можете использовать в других программах, например QGIS.
Если это необходимо, можно настроить права доступа к сервису OGC API Features.
Программно подключаться к созданным сервисам OGC API Features можно по ссылкам следующего вида (также поддерживается basic auth):
https://yourwebgis.nextgis.com/api/resource/208/ogcf
7.6.4. Cервис WFS¶
Создание сервиса WFS¶
Настройка сервиса WFS осуществляется так же, как для WMS-сервиса, только добавляется не стиль, а слой.
Примечание
На данный момент поддерживаются фильтры Intersects, ResourceId (ObjectId, FeatureId).
NextGIS Web является сервером WFS - может публиковать сервисы WFS на базе векторных слоёв. Используя эти сервисы, сторонние программы могут изменять векторные данные на сервере. Поддерживаемые версии протокола WFS: 1.0, 1.1, 2.0, 2.0.2.
Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Сервис WFS (Рис. 7.51.).

Рис. 7.51. Выбор типа ресурса «Сервис WFS»¶
На вкладке Ресурс указывается наименование сервиса (Рис. 7.52.). Поле «Ключ» предназначено для разработчиков, заполенять его не обязательно.

Рис. 7.52. Наименование Сервиса WFS¶
На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 7.53.)

Рис. 7.53. Описание Сервиса WFS¶
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 7.54.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.

Рис. 7.54. Метаданные Сервиса WFS¶
Вкладка «Сервис WFS» отвечает за слои, включаемые в сервис (Рис. 7.55.). Для каждого добавленного слоя нужно указать число возвращаемых из базы объектов. По умолчанию это значение равно 1000. Если в этом поле значение убрать совсем, то ограничение будет снято и будут передаваться все объекты. Однако это может привести к значительной нагрузке на сервер и значительным задержкам при передаче больших объемов данных.

Рис. 7.55. Окно параметров сервиса WFS¶
Использование сервиса WFS¶
После создания ресурса вам будет доступен URL сервиса WFS, который вы можете использовать в других программах, например NextGIS QGIS. Для этого нужно настроить права доступа к сервису WFS. Подключение при помощи WFS позволяет редактировать данные на сервере из настольного приложения.
Программно подключаться к созданным сервисам WFS можно по ссылкам следующего вида (также поддерживается basic auth):
https://mywebgis.nextgis.com/api/resource/2413/wfs?SERVICE=WFS&TYPENAME=ngw_id_2412&username=administrator&password=mypassword&srsname=EPSG:3857&VERSION=1.0.0&REQUEST=GetFeature
7.6.5. Сервис WMS¶
Создание WMS-сервиса¶
Программное обеспечение NextGIS Web может работать как сервер WMS. По этому протоколу клиенты запрашивают картинку карты по заданному охвату.
Для развёртывания WMS-сервиса необходимо добавить ресурс. Нажмите кнопку Создать ресурс и выберите во всплывающем окне тип ресурса Сервис WMS (см. Рис. 7.56.).

Рис. 7.56. Выбор типа ресурса «Сервис WMS»¶
На вкладке «Ресурс» указывается наименование сервиса WMS (Рис. 7.57.). Оно будет отображаться в административном интерфейсе. Поле Ключ является необязательным к заполнению.

Рис. 7.57. Наименование сервиса WMS¶
На вкладке «Описание» можно добавить произвольный текст, описывающий текущий ресурс (Рис. 7.58.)

Рис. 7.58. Описание Сервиса WMS¶
В «Метаданные» ресурса можно записать информацию в формате «ключ-значение» (Рис. 7.59.). Как правило, метаданные используются для разработки сторонних приложений с помощью API.

Рис. 7.59. Метаданные Сервиса WMS¶
На вкладке «Сервис WMS» необходимо добавить ссылки на нужные слои или стили. (Рис. 7.60.). Также можно указать диапазон масштабных уровней отображения данных.

Рис. 7.60. Окно параметров соединения WMS¶
После создания ресурса выведется сообщение с URL WMS-сервиса, который можно использовать в других программах, например NextGIS QGIS, или JOSM. Далее необходимо настроить права доступа к WMS-сервису для стороннего использования различными пользователями.
Cлой NextGIS Web можно добавлять в настольные, мобильные и Веб ГИС различными способами.
Использование сервиса WMS¶
NextGIS Web является сервером WMS. Соответственно подключить созданные в нем сервисы WMS можно в любом клиентском ПО, поддерживающем протокол WMS. Для этого нужно знать URL WMS-сервиса, который высвечивается на странице настроек конкретного сервиса.
Например:
https://demo.nextgis.ru/api/resource/4817/wms
Для использования сервиса через утилиты GDAL нужно создать для него файл XML. Для создания такого файла нужно знать URL сервиса WMS. Эти параметры нужно подставить в строку ServerUrl примера ниже. Все остальное остается неизменным.
<GDAL_WMS>
<Service name="WMS">
<Version>1.1.1</Version>
<ServerUrl>https://demo.nextgis.ru/api/resource/4817/wms</ServerUrl>
<SRS>EPSG:3857</SRS>
<ImageFormat>image/png</ImageFormat>
<Layers>moscow_boundary_multipolygon</Layers>
<Styles></Styles>
</Service>
<DataWindow>
<UpperLeftX>-20037508.34</UpperLeftX>
<UpperLeftY>20037508.34</UpperLeftY>
<LowerRightX>20037508.34</LowerRightX>
<LowerRightY>-20037508.34</LowerRightY>
<SizeY>40075016</SizeY>
<SizeX>40075016.857</SizeX>
</DataWindow>
<Projection>EPSG:3857</Projection>
<BandsCount>3</BandsCount>
</GDAL_WMS>
Если нужна картинка с альфа каналом, следует указать <BandsCount>4</BandsCount>
.
Пример вызова утилиты GDAL. Она получает картинку из NextGIS WEB по WMS и сохраняет её в GeoTIFF.
gdal_translate -of "GTIFF" -outsize 1000 0 -projwin 4143247 7497160 4190083 7468902 ngw.xml test.tiff