Skip To Content

Опрос внешнего веб-сайта на наличие XML

Входной коннектор Опрос внешнего веб-сайта на наличие XML может использоваться для извлечения и адаптации данных событий, отформатированных как XML, с внешнего веб-сайта. Примеры иллюстраций того, в каком виде ArcGIS GeoEvent Server ожидает формат типичных записей данных XML, см. в блоге Esri Community XML Data Structures - Working with Hierarchy and Limitations.

Когда с веб-сервера или веб-сервиса пакетно возвращается множество записей данных событий, они могут быть организованы в единый корневой узел, как показано ниже. Адаптер XML обрабатывает каждый объект как отдельную запись события, когда задан корневой узел, в который собраны отдельные записи.

Структура данных XML с записями о событиях, организованными с использованием иерархии тегов, элементов и атрибутивных значений XML

Примечания по использованию

При использовании входного коннектора Опрос внешнего веб-сайта на наличие XML имейте в виду следующее:

  • Используйте этот входной коннектор для запроса с веб-сервера или веб-сервиса данных, форматированных как XML, и их адаптации для создания записей событий для обработки.
  • Этот входной коннектор соединяет в пару входной адаптер XML с входным транспортом HTTP.
  • Типовая структура данных XML с записями о событиях, организованными с использованием иерархии тегов, элементов и атрибутивных значений XML, показана выше.
  • Параметр Имя объекта XML используется для идентификации имени элемента группы в структуре документа XML.
  • Данные записей, организованные в указанный групповой элемент, будут обрабатываться как отдельные записи, при задании имени группирующего элемента.
  • Если параметр Имя объекта XML не задан, то учитывается вся структура данных в корневом элементе документа XML; схема записей событий (т.е. Определение GeoEvent) будет отражать структуру всего документа XML.
  • Параметр Метод HTTP задает тип запроса HTTP, использующегося для запроса данных с веб-сервиса. По умолчанию применяется запрос HTTP/GET.
  • Запись XML не обязательно должна содержать данные, которые представляют геометрию.
  • Адаптер поддерживает возможность построения точечной геометрии из атрибутивных значений x, y и z
  • Параметры запросы можно настроить с помощью свойства Параметры, чтобы более точно отобрать интересующие данные.
  • Настройка параметров запроса как части запроса HTTP/GET может повысить производительность, т.к. уменьшит число возвращаемых элементов.
  • Имя и значения определенного параметра запроса зависит от поддержки запросов внешним веб-сервисом.
  • Для этого входного коннектора предполагается, что внешний веб-сервер или веб-сервис принимают запросы HTTP/GET, не требуя аутентификации. Если внешние веб-сайты требуют аутентификацию, можно создать собственный входной коннектор, который соединяет в пару входной адаптер XML и входной транспорт HTTP, поддерживающий базовую, сертифицированную или OAuth аутентификацию.
  • Параметр Получать только новые данные используется, чтобы при запросе лента возвращала только ранее не просмотренные или только что обновленные данные. Эта возможность зависит от правильности включения потоком параметра Last-Modified в заголовок ответа на запрос HTTP. Если в заголовке ответа не указывается дата или время последнего обновления, GeoEvent Server предполагает, что данные в ответе представляют новые или обновленные данные. Более подробно об использовании Last-Modified в заголовках ответов в спецификации RFC 7232 HTTP.
  • Этот входной коннектор включает параметр Режим обучения, который может быть полезен, если необходимо разрешить входному коннектору изменять построенное им определение GeoEvent. Цель этого параметра состоит в том, чтобы временно принять те полученные данные о событиях, у которых переменная схема или структура данных. Входной коннектор будет использовать образец полученных записей данных, чтобы узнать больше о переменной структуре данных и добавить новые, ранее не наблюдаемые поля атрибутов к существующему определению GeoEvent.

    Возможность изменения определения GeoEvent "на лету" может отрицательно повлиять на проект анализа в режиме реального времени в сервисе GeoEvent. Если во входных данных событий ожидается изменение схемы, рекомендуется использовать режим обучения максимально непродолжительное время, чтобы создать Определение GeoEvent, которое поддерживает все ожидаемые варианты входных данных. Затем режим обучения можно отключить, а автоматически созданное определение GeoEvent скопировать и адаптировать для производственного развертывания.

Параметры

Ниже приведены параметры для входного коннектора Опрос внешнего веб-сайта на наличие XML:

ПараметрОписание

Имя

Описательное имя входного коннектора, используемое для ссылки в GeoEvent Manager.

URL

Базовый URL внешнего веб-сайта, на котором размещены данные в формате XML. GeoEvent Server отправляет запрос на URL-адрес для извлечения данных XML.

Создать определение GeoEvent

Указывает, используется ли новое или существующее определение GeoEvent для данных входящих событий. Определение GeoEvent требуется GeoEvent Server, чтобы понимать поля атрибутов и типы данных входящих событий.

  • Да – новое определение GeoEvent создается на основе схемы первой полученной записи события.
  • Нет - определение GeoEvent не создается. Выберите существующее определение GeoEvent, соответствующее схеме данных входящего события.

Имя определения GeoEvent (новое)

(Условия)

Имя, которое присваивается для нового Определения GeoEvent. Если определение GeoEvent с указанным именем уже существует, используется существующее определение GeoEvent. Первая полученная запись данных используется для определения ожидаемой схемы последующих записей данных, на основе которой создается новое определение GeoEvent.

Этот параметр показывается, когда для свойства Создать определение GeoEvent задано значение Да, и скрыто, если задано значение Нет.

Имя определения GeoEvent (существующее)

(Условия)

Имя существующего определения GeoEvent для использования при адаптации полученных данных для создания данных событий для обработки сервисом GeoEvent.

Этот параметр показывается, когда для свойства Создать определение GeoEvent задано значение Нет, и скрыто, если задано значение Да.

Метод HTTP

Указывает метод HTTP-запроса, который применяется, когда GeoEvent Server опрашивает внешний сервер, предоставляющий поток данных. По умолчанию применяется запрос HTTP/GET.

  • GETGeoEvent Server отправляет запрос GET.
  • POSTGeoEvent Server отправляет запрос POST.
  • PUTGeoEvent Server отправляет запрос PUT.

Запрос Post от

Тело запроса Post

Тип MIME тела сообщения

Параметры запроса Post

(Условия)

Эти параметры скрыты по умолчанию, когда для свойства Метод HTTP задано Get.

Подробнее см. раздел ниже Советы и ограничения.

Пространственная привязка по умолчанию

При создании точечной геометрии по значениям координат или если получаемые данные не включают пространственную привязку, необходимо использовать идентификатор WKID пространственной привязки по умолчанию.

Получать только новые данные

Указывает, выполняет ли адаптер поиск последнего измененного значения в заголовке ответа канала данных и пытается ли использовать это значение, чтобы избежать обработки данных, которые уже были получены, но не обновлены. Название этого параметра может ввести в заблуждение. Транспорт всегда получает любые данные, которые канал включает в свой ответ на запрос коннектора. Однако, если указано значение Получать только новые данные, транспорт кэширует дату и время последнего запроса и ретранслирует полученные данные адаптеру только в том случае, если ответ из канала данных содержит последнее измененное значение, которое больше, чем кэшированное значение транспорта.

Указание последнего измененного значения необязательно. На практике не многие каналы данных включают его в свои ответы. Значение по умолчанию для этого параметра — Да, но если последнее измененное значение не найдено, параметр игнорируется, поскольку дата/время, необходимые для определения того, являются ли данные в ответе новыми или обновленными, недоступны.

  • Да – в каждый интервал опроса обрабатываются только ответы, содержащие новые или обновленные данные.
  • Нет – в каждый интервал опроса обрабатываются все полученные данные.

Подробнее об использовании Последнего измененного значения в заголовке ответов см. спецификацию RFC 7232 HTTP.

Частота (в секундах)

Интервал (в секундах), по истечении которого внешний веб-сервер или веб-сервис опрашивается для получения данных. Значение по умолчанию — 10 секунд (один запрос опроса выполняется каждые 10 секунд).

Имя параметра заголовка:Список значений

Параметры, включаемые в HTTP-заголовок запроса при опросе внешнего веб-сервера или веб-сервиса. Параметры заголовка должны быть заданы с помощью пар Имя: Значение (включая двоеточие), разделенных запятыми.

Построить геометрию из полей

Указывает, будет ли входной коннектор создавать геометрию точки, используя значения координат, полученные в качестве атрибутов. По умолчанию Нет.

  • Да – значения из указанных полей атрибутов событий используются для построения геометрии точек.
  • Нет – геометрия точек не строится. Предполагается, что поле атрибута содержит значение, которое может быть интерпретировано как геометрия, или запись события является непространственной (не имеет геометрии).

Поле геометрии X

(Условия)

Поле атрибута в данных входящего события, содержащее координатную часть X (например, горизонталь или долготу) местоположения точки.

Этот параметр показывается, когда для Построить геометрию из полей задано значение Да, и скрыто, если задано значение Нет.

Поле геометрии Y

(Условия)

Поле атрибута в данных входящего события, содержащее координатную часть Y (например, вертикаль или широту) местоположения точки.

Этот параметр показывается, когда для Построить геометрию из полей задано значение Да, и скрыто, если задано значение Нет.

Поле геометрии Z

(Условия)

Поле атрибута в данных входящего события, содержащего координатную часть Z (например, глубина или высота) местоположения точки. Если значение не предоставлено, значение z опускается и строится 2D геометрия точки.

Этот параметр показывается, когда для Построить геометрию из полей задано значение Да, и скрыто, если задано значение Нет.

Имя объекта XML

Имя элемента XML, который идентифицирует отдельные записи данных в полученной структуре данных XML. Если Имя объекта XML используется для указания элемента XML по имени, адаптер ищет узлы, соответствующие указанному имени, и рассматривает эти узлы только как записи данных. Если значение не предоставлено (по умолчанию), учитываются все данные под верхним корневым элементом XML.

Параметры

Параметр запроса (или несколько параметров запроса), присоединяемые к базовому URL. Параметры запроса будут разными для каждого веб-сервиса и поддерживаются не всеми сервисами. Если поддерживаются, параметры запроса помогают указать данные, представляющие особый интерес. У этого параметра нет значения по умолчанию. Параметры запроса обычно включены в параметр URL.

Использовать URL-адрес прокси

Указывает, использует ли GeoEvent Server URL-адрес прокси при выполнении HTTP-запросов. По умолчанию Нет.

  • ДаGeoEvent Server использует указанный прокси при отправке запроса на URL-адрес внешнего сервиса.
  • НетGeoEvent Server не использует URL-адрес прокси. Доступ к базовому URL выполняется напрямую.

URL-адрес прокси

(Условия)

URL-адрес прокси, который используется во время запроса HTTP.

Этот параметр показывается, когда для свойства Использовать URL-адрес прокси задано значение Да, и скрыто, если задано значение Нет.

Ожидаемый формат данных

Шаблон, используемый для соответствия ожидаемым строковым представлениям значений даты/времени и преобразования их в значения даты Java. Формат шаблона следует нормам для класса Java SimpleDateFormat.

Хотя предпочтительным шаблоном для значений даты/времени в GeoEvent Server является стандарт ISO 8601, несколько строковых представлений значений даты/времени, обычно распознаваемых как значения даты, могут быть преобразованы в значения даты Java без указания значения Ожидаемого формата даты. К ним относятся:

  • "2019-12-31T23:59:59" – формат стандарта ISO 8601
  • 1577836799000 – дата Java (epoch long integer; UTC)
  • "Tue Dec 31 23:59:59 -0000 2019" – общий строковый формат веб-сервисов
  • "12/31/2019 11:59:59 PM" – общий формат, используемый в США (12 часов)
  • "12/31/2019 23:59:59" – общий формат, используемый в США (24 часа)

Если полученные значения даты/времени используют соглашение, отличное от перечисленных выше, необходимо указать ожидаемый шаблон формата даты, чтобы GeoEvent Server мог адаптировать значения даты/времени.

Допустимые типы MIME (режим клиента)

Указывает типы MIME, которые будет искать этот коннектор при получении ответа на запрос. Ответ внешнего веб-сервиса указывает фактический тип(ы) MIME для любых данных, отправленных на GeoEvent Server. Этот коннектор распознает следующий тип MIME (по умолчанию):

приложение/xml

Подробнее об официальных типах MIME см. Internet Assigned Numbers Authority (IANA). Подробнее о типах MIME, которые не используются ArcGIS Server, см. Типы MIME, не используемые ArcGIS Server.

Этот параметр показывается, когда для Метода HTTP задано значение Get, и скрыто, если задано значение Post или Put.

Ожидание HTTP (в секундах)

Максимальное время ожидания (в секундах) входным коннектором ответа от внешнего веб-сервиса, к которому он отправил запрос. Указанное значение должно быть задано целым числом от 1 до 2147483. Значение по умолчанию – 30 секунд (HTTP-запрос останавливается через 30 секунд, если ответ не получен).

Режим Обучение

Указывает активен или недоступен Режим обучения. Если для Режим обучения задано значение Да, входящий адаптер добавляет новые поля к определению GeoEvent, которое он создал и поддерживает.

  • Да – режим обучения активен. Определение GeoEvent обновляется новыми полями из записей событий, использующих разные схемы.
  • Нет – режим обучения недоступен. Определение GeoEvent не изменяется.

Режим обучения может быть полезен, если необходимо разрешить входному коннектору изменять построенное им определение GeoEvent. Цель этого параметра состоит в том, чтобы временно принять те полученные данные событий, у которых переменная схема или структура данных. Входной коннектор использует образец полученных записей данных, чтобы определить дополнительную информацию о переменной структуре данных и добавить новые, ранее не наблюдаемые поля атрибутов к существующему определению GeoEvent.

Возможность изменить определение GeoEvent на лету может негативно повлиять на дизайн аналитики в режиме реального времени в сервисе GeoEvent. Если во входных данных события ожидается изменение схемы, рекомендуется, по возможности, использовать Режим обучения непродолжительное время, чтобы создать определение GeoEvent, которое поддерживает все ожидаемые варианты входящих данных. Затем Режим обучения можно отключить, а автоматически созданное определение GeoEvent скопировать и адаптировать для производственного развертывания.

Советы и ограничения

Всегда используйте запрос HTTP/GET, который не включает тело содержимого, и используйте параметры запроса для указания интересующих данных. Приведенные ниже параметры применимы только к выходным коннекторам, которые отправляют данные на внешний веб-сервер или веб-сервис. Оставьте для параметра Метод HTTP значение по умолчанию HTTP/GET, и эти параметры останутся скрытыми.

ПараметрОписание

Запрос Post от

(Условия)

Указывает, использует ли этот коннектор запрос HTTP/POST или HTTP/PUT.

  • Тело содержимого – HTTP-запрос отправляет данные, используя тело содержимого запроса.
  • Параметры – HTTP-запрос отправляет данные, используя параметры, которые этот коннектор добавляет к параметру URL, описанному выше.

Этот параметр показывается, когда для свойства Метод HTTP задано значение Post или Put, и скрыто, если задано значение Get.

Тело запроса Post

(Условия)

Данные, которые включаются в тело содержимого запроса HTTP/POST или HTTP/PUT.

Этот параметр показывается, когда для свойства Запрос Post от задано значение Тело содержимого, и скрыто, если задано значение Параметры.

Тип MIME тела сообщения

(Условия)

Тип MIME данных которые включаются в тело содержимого HTTP-запроса. Типы MIME обычно состоят из структуры типа и подтипа и используются для указания типов интернет-носителей, используемых и принимаемых HTTP-клиентом и сервером.

Этот параметр показывается, когда для свойства Запрос Post от задано значение Тело содержимого, и скрыто, если задано значение Параметры.

Параметры запроса Post

(Условия)

Параметры, которые включаются в HTTP-запрос. Укажите значение Параметров, используя пары Имя:Значение (включая двоеточие), разделенные запятыми. У этого параметра нет значения по умолчанию.

Этот параметр показывается, когда для свойства Запрос Post от задано значение Параметры, и скрыто, если задано значение Тело содержимого.