Skip To Content

Получать JSON на конечной точке REST

Входной оператор подключения Получить JSON на конечной точке REST можно использовать для получения и адаптации данных о событиях, представленных в формате общего JSON, на конечной точке REST, обслуживаемой ArcGIS GeoEvent Server. С учетом стандартной конфигурации GeoEvent Server для поставщиков данных ожидаемым вариантом будет отправка данных через HTTP/POST на конечную точку в формате https://<machine_name>.<domain>:6143/geoevent/rest/receiver/name, где name - это имя входного оператора подключения.

Блок общих JSON с четырьмя записями о событиях в массиве

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

  • Используйте этот входной оператор подключения для получения данных, отформатированных как общий JSON, отправьте с помощью HTTP/POST на конечную точку GeoEvent Server, обслуживающего REST.
  • Этот входной оператор подключения соединяет в пару Входящий адаптер Generic JSON с Входящим транспортом HTTP.
  • Типичный блок общего JSON показан выше. В этом примере четыре записи о событиях организованы в массив.
  • Адаптер будет обрабатывать каждый объект в массиве как отдельную запись события.
  • GeoJSON и объект JSON являются разновидностями общего JSON; для обработки этих специальных форматов используются другие адаптеры GeoEvent Server.
  • Дополнительную информацию о структурах JSON см. в блоге GeoNet JSON Data Structures - Working with Hierarchy and Multicardinality.
  • Настройка и сохранение новых входных параметров создает конечную точку REST, которая обслуживается GeoEvent Server.
  • Вы можете восстановить полный путь к конечной точке REST, обслуживаемой GeoEvent Server, изменив входные данные после сохранения.
  • GeoEvent Server можно настроить на использование другого базового URL для приемника REST и/или подключение через порт, отличный от 6143.
  • Поставщик данных должен включить в заголовок HTTP/POST тип MIME, связанный с отправляемыми данными.
  • Настроенные входные параметры должны описывать, какие типы MIME будет принимать транспорт.
  • Этот оператор подключения ожидает тип MIME application/json, который является типом MIME по умолчанию для обмена JSON между клиентом и сервером.
  • Адаптер поддерживает возможность построения точечной геометрии на основе атрибутивных значений X, Y и Z.
  • Транспорт будет принимать и запросы HTTP/GET, и HTTP/POST. Поставщик данных обычно создает запрос HTTP/POST на отправку данных о событии на GeoEvent Server с JSON в теле запроса без параметров запроса. Этот входной оператор подключения, однако, может извлечь данные о событиях в формате общего JSON, если данные включены в один или несколько параметров запроса в URL запроса HTTP/GET. Для этой возможности используйте Получить запрос, содержащий сырые данные. Более подробную информацию см. в блоге GeoNet Enhancements to the GeoEvent Server HTTP Inbound Transport.
  • Этот входной оператор подключения включает Режим обучения, который может быть полезен, если вам нужно разрешить входному оператору подключения изменить определение GeoEvent, которое он построил. Цель этого свойства состоит в том, чтобы временно принять те полученные данные о событиях, у которых переменная схема или структура данных. Входной оператор подключения будет использовать пример записей полученных данных для получения более подробной информации о структуре переменных данных и присоединения новых, ранее неизученных атрибутивных полей к существующему определению GeoEvent.

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

Параметры

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

Имя

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

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

Известный идентификатор (WKID) пространственной привязки, используемый при построении геометрии из значений полей атрибутов, координаты которых не являются значениями широты и долготы для предполагаемой географической системы координат WGS84, или строки геометрии, не включающие пространственную привязку. Также может быть указано известное текстовое значение (WKT) или имя поля атрибута, содержащего WKID или WKT.

Имя объекта JSON

Имя элемента JSON, который может использоваться в качестве корневого узла подструктуры в пределах полученных данных JSON. Когда Имя объекта JSON используется для указания элемента JSON по имени, адаптер будет искать подструктуры, имя объекта которых соответствует указанному имени элемента. Будут рассмотрены только данные в пределах идентифицированной подструктуры. Если оставить пустым, что является значением по умолчанию, верхний объект JSON используется в качестве корня всей структуры JSON.

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

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

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

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

(Условия)

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

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

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

(Условия)

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

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

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

Известный идентификатор (WKID) пространственной привязки, используемый при построении геометрии из значений полей атрибутов, координаты которых не являются значениями широты и долготы для предполагаемой географической системы координат WGS84, или строки геометрии, не включающие пространственную привязку. Также может быть указано известное текстовое значение (WKT) или имя поля атрибута, содержащего WKID или WKT.

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

Указывает типы MIME, которые будет принимать входной коннектор. Используйте запятые для разделения значений, например, text/plain,application/xml,text/xml. Типы MIME обычно состоят из структуры типа/подтипа и используются, когда сервер хочет указать тип(ы) интернет-носителей данных, которые он будет принимать от клиентов. По умолчанию используется application/json, который является официальным типом MIME для обмена JSON между клиентом и сервером.

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

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

Шаблон, используемый для соответствия ожидаемым строковым представлениям значений даты / времени и преобразования их в значения даты 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 знал, как следует адаптировать значения даты/времени.

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

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

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

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

(Условия)

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

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

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

(Условия)

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

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

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

(Условия)

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

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

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

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

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

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

Запрос Get содержит сырые данные

Указывает, как коннектор должен обрабатывать данные, включенные в полученные HTTP-запросы. Необработанные данные могут быть отправлены как значение одного параметра запроса с помощью запроса HTTP/GET, если Имя параметра сырых данных указывает имя параметра запроса. В противном случае запрос HTTP/GET должен содержать несколько параметров запроса, имена которых соответствуют полям атрибутов, указанным в определении GeoEvent, для которого настроен коннектор.

Этот коннектор использует универсальный входящий адаптер JSON, поэтому при использовании формы одного параметра запроса его значение должно быть отформатировано как универсальный JSON. Тело содержимого запроса должно быть пустым при использовании запросов HTTP/GET для отправки данных. Данные обычно отправляются с помощью запроса HTTP/POST без каких-либо параметров запроса. Ожидается, что полезные данные запроса будут отформатированы как общий JSON с данными события, включенными в тело содержимого запроса. Любые данные, включенные в параметры запроса, игнорируются при использовании HTTP/POST для отправки данных событий на GeoEvent Server.

  • Да – запросы HTTP/GET будут получены и извлекать данные события из указанного параметра запроса. Только один параметр запроса может рассматриваться как источник необработанных данных запроса, а тело содержимого запроса должно быть пустым.
  • Нет – при получении запросов HTTP/POST игнорируются любые параметры запроса и извлекаются данные событий из тела содержимого запроса (которое должно быть отформатировано как generic JSON). При получении запросов HTTP/GET тело содержимого запроса должно быть пустым, а данные события должны быть извлечены из нескольких параметров запроса, имена которых соответствуют используемому определению GeoEvent.

Имя параметра для сырых данных

(Условия)

Имя параметра запроса, значение которого предоставляет необработанные данные для входящих запросов HTTP/GET. Значение параметра запроса должно быть одной строкой, отформатированной как универсальный JSON.

Это свойство показывается, когда для Запрос Get содержит сырые данные задано значение Да, и скрыто, если выбрано значение Нет