“在 REST 端点接收 XML”输入连接器可用于在由 ArcGIS GeoEvent Server 托管的 REST 端点上接收和改编格式为 XML 的事件数据。 给定一个标准 GeoEvent Server 配置时,数据提供商应期望通过 HTTP/POST 将数据发送到格式为 https://<machine_name>.<domain>:6143/geoevent/rest/receiver/name 的端点,其中 name 是已配置的输入连接器的名称。
用法说明
使用“在 REST 端点接收 XML”输入连接器时,应记住以下事项:
- 使用此输入连接器接收使用 HTTP/POST 发送到 GeoEvent Server 托管的 REST 端点的格式为通用 XML 的数据。
- 此输入连接器将 XML 入站适配器与 HTTP 入站传输进行配对。
- 使用 XML 标记、元素和属性值层次结构组织事件记录的典型 XML 数据结构如上图所示。
- XML 对象名称参数用于标识 XML 文档结构中组元素的名称。
- 在指定分组元素的名称时,组织在指定组元素下的数据记录将被作为单独的事件记录进行处理。
- 在未指定 XML 对象名称参数时,将考虑 XML 文档根元素下面的整个数据结构;事件记录的方案(即 GeoEvent 定义)将反映整个 XML 文档结构。 有关 XML 数据结构的其他信息,请参阅 Esri Community 博客 XML 数据结构 - 特征和局限性。
- 配置并保存一个新输入会创建一个 GeoEvent Server 托管的 REST 端点。
- 通过在保存输入后对其进行编辑,可以恢复 GeoEvent Server 托管 REST 端点的完全限定路径。
- 可以将 GeoEvent Server 配置为对其 REST 接收器应用不同的基本 URL 和通过 6143 以外的端口进行连接。
- 数据提供商必须在其 HTTP/POST 的标头中包含与正在发送的数据关联的 MIME 类型。
- 您配置的输入应指定传输将接受的 MIME 类型。
- 此输入连接器期望的 MIME 类型为 application/xml 或 text/xml,这是客户端和服务器之间 XML 交换使用的标准 MIME 类型。
- 适配器支持根据 x、y 和 z 属性值构造点几何的功能。
- 传输将接受 HTTP/GET HTTP/POST 请求。 数据提供商通常应发出正文中含 XML 且无查询参数的 HTTP/POST 请求以将事件数据发送到 GeoEvent Server。 但是,当数据作为一个或多个查询参数包含在 HTTP/GET 请求的 URL 中时,此输入连接器还可提取格式为通用 XML 的事件数据。 要使用此功能,请使用原始数据的参数名称选项。 有关详细信息,请参阅 Esri Community 博客 GeoEvent Server HTTP 入站传输的增强功能。
- 此输入连接器包括学习模式,您可以使用此模式允许输入连接器修改其构造的 GeoEvent 定义。 此属性的目的是暂时接受所接收的事件数据将具有变量方案或数据结构。 输入连接器将使用所接收数据记录的样本来了解有关变量数据结构的详细信息,并将先前未发现的新属性字段追加到现有 GeoEvent 定义中。
允许动态更改 GeoEvent 定义会对 GeoEvent 服务中的实时分析设计产生负面影响。 最佳做法是,如果入站事件数据中预期存在方案差异,建议您在尽可能短的时间内使用学习模式,以生成支持入站数据所有预期变体的 GeoEvent 定义。 然后,可以关闭学习模式,自动生成的 GeoEvent 定义将进行复制和定制以用于生产部署。
参数
以下是“在 REST 端点接收 XML”输入连接器的参数:
参数 | 描述 |
---|---|
名称 | 用于在 GeoEvent Manager 中引用的输入连接器的描述性名称。 |
XML 对象名称 | 用于标识接收的 XML 数据结构中的各个数据记录的 XML 元素的名称。 当 XML 对象名称用于按名称指定 XML 元素时,适配器将搜索与指定名称匹配的结点,并仅将这些结点视为数据记录。 如果未指定(默认值),则会考虑最上方 XML 根元素下的所有数据。 |
创建 GeoEvent 定义 | 指定是否应将新的或现有的 GeoEvent 定义用于入站事件数据。 GeoEvent Server 需要 GeoEvent 定义,以了解入站事件数据属性字段和数据类型。
|
GeoEvent 定义名称(新) (条件分析) | 分配给新 GeoEvent 定义的名称。 如果已存在具有指定名称的 GeoEvent 定义,则会使用现有的 GeoEvent 定义。 收到的第一个数据记录将用于确定后续数据记录的预期方案,将根据第一个数据记录的方案创建新的 GeoEvent 定义。 此参数在创建 GeoEvent 定义设置为是时显示,设置为否时隐藏。 |
GeoEvent 定义名称(现有) (条件分析) | 在调整接收数据以创建事件数据以供 GeoEvent 服务处理时使用的现有 GeoEvent 定义的名称。 此参数在创建 GeoEvent 定义设置为否时显示,设置为是时隐藏。 |
默认空间参考 | 当从坐标不是假定的 WGS84 地理坐标系的纬度和经度值的属性字段值构造几何时使用的空间参考的熟知 ID (WKID),或接收的不包含空间参考的几何字符串。 还可以指定熟知文本 (WKT) 值或包含 WKID 或 WKT 的属性字段的名称。 |
可接受的 MIME 类型(服务器模式) | 指定输入连接器将接受的 MIME 类型。 使用逗号来分隔值,例如:text/plain,application/xml,text/xml。 MIME 类型通常由类型/子类型结构组成,并在服务器指定它将从客户端接受的数据的 Internet 媒体类型时使用。 默认值为application/xml,text/xml,这是客户端与服务器之间 XML 交换的标准类型。 有关官方 MIME 类型的详细信息,请参阅互联网地址编码分配机构 (IANA)。 有关 ArcGIS Server 未使用的 MIME 类型的详细信息,请参阅 ArcGIS Server 未使用的 MIME 类型。 |
从字段构建几何 | 指定输入连接器是否应使用作为属性接收的坐标值构造点几何。 默认为否。
|
X 几何字段 (条件分析) | 入站事件数据中包含点位置 x 坐标部分(例如水平或经度)的属性字段。 此参数在从字段构建几何设置为是时显示,设置为否时隐藏。 |
Y 几何字段 (条件分析) | 入站事件数据中包含点位置 y 坐标部分(例如垂直或纬度)的属性字段。 此参数在从字段构建几何设置为是时显示,设置为否时隐藏。 |
Z 几何字段 (条件分析) | 入站事件数据中包含点位置 z 坐标部分(例如深度或高度)的字段的名称。 如果留空,则将省略 z 值,并将构建 2D 点几何。 此参数在从字段构建几何设置为是时显示,设置为否时隐藏。 |
预期日期格式 | 该模式用于匹配日期/时间值的预期字符串表示形式,并将它们转换为 Java 日期值。 模式的格式遵循 Java SimpleDateFormat 类约定。 而 GeoEvent Server 更偏好以 ISO 8601 标准表示的日期/时间值,通常被识别为日期值的日期/时间值的多个字符串表示可以转换为 Java 日期值,且无需指定预期日期格式模式。 其中包括:
如果收到的日期/时间值使用并非上述五种之一的约定表示,则必须指定一个预期日期格式模式以便 GeoEvent Server 了解如何调整日期/时间值。 |
学习模式 | 指定学习模式为活动还是禁用状态。 学习模式设置为是时,入站适配器会将新字段追加到其已创建和正在维护的 GeoEvent 定义中。
当您需要允许输入连接器修改它构建的 GeoEvent 定义时,学习模式会很有用。 此参数的目的是暂时接受所接收的事件数据将具有变量方案或数据结构。 输入连接器将使用所接收数据记录的样本来了解有关变量数据结构的详细信息,并将先前未发现的新属性字段追加到现有 GeoEvent 定义中。 允许在运行中更改 GeoEvent 定义会对 GeoEvent 服务中的实时分析设计产生负面影响。 如果入站事件数据中预期存在方案差异,建议您在尽可能短的时间内使用学习模式,以生成支持入站数据所有预期变体的 GeoEvent 定义。 然后,可以关闭学习模式并为生产部署复制和定制自动生成的 GeoEvent 定义。 |
原始数据的参数名称 (条件分析) | 查询参数的名称,该参数的值为入站 HTTP GET 请求提供原始数据。 查询参数的值应是通用 XML 格式的单个字符串。 当客户端应用程序使用 HTTP/POST 请求发送数据时,此属性应留空。 假设 HTTP/POST 请求的内容正文包含 XML 格式的数据。 |