开放地理空间联盟 (OGC) 的网络处理服务 (WPS) 规范是一种用于在 Web 上提供和执行地理空间处理的国际规范。您可通过在发布地理处理服务时启用 WPS 功能来创建 WPS 服务。
为何使用 WPS 服务?
如果要在不同的平台和客户端之间以一种开放并经认可的方式提供地理处理服务,则 WPS 服务非常有用。任何原生支持 WPS 1.0.0 规范的客户端均可查看和使用您的服务。
范围和兼容性
客户端应用程序可通过向服务的 URL 附加参数来使用 WPS 服务。发布到 ArcGIS Server 的 WPS 服务支持以下强制性的操作:
- 请求服务的元数据 (GetCapabilities)
- 请求有关可运行在服务上的进程的详细信息 (DescribeProcess)
- 请求运行一个由 WPS 服务实现的进程 (Execute)
您可通过开放地理空间联盟网站了解有关 WPS 服务的详细信息。Esri 还提供了标准和互操作性网页,详细介绍了 ArcGIS 对 OGC 服务的支持。
WPS 执行模式
WPS 服务及其随附的任务或者是同步,或者是异步。同步意味着,当任务在服务器上执行时,客户端应用程序必须等待完成才能执行其他任务。异步意味着,客户端应用程序不必等待服务器上的任务完成即可继续执行其他任务。对于这两种执行模式,任务结果都可以存储在服务器中并通过 URL 进行引用,或者直接将结果返回到客户端。。
选择以同步还是异步方式执行 WPS 服务需要取决于您的具体情况。只有那些执行速度快且仅输出小型数据集的任务,才应被发布为同步 WPS 服务。
支持 WPS 服务的数据类型
只有某些数据类型才可用作 WPS 服务的输入和输出参数。这些数据类型都源于地理处理可支持的 Esri 数据类型。下表列出了 WPS 服务中所支持的输入和输出数据类型及其等效的子类型。
输入/输出数据类型 | 子类型 |
---|---|
标准 | 长整型 |
双精度 | |
字符串 | |
日期 | |
布尔型 | |
线性单位 | |
要素集 | GML 3-SF |
记录集 | GML 3-SF |
文件 | .zip |
二进制 | |
XML | |
纯文本 | |
栅格 | 图像/TIFF |
二进制(仅输入) |
有关详细信息,请参阅地理处理服务所支持的输入和输出数据类型。
发布 WPS 服务
要发布 WPS 服务,您需要发布一个启用了 WPS 功能的地理处理服务。有关 WPS 服务创建过程的详细步骤信息,请参阅教程:发布 WPS 服务。
使用 WPS 服务
ArcGIS Server 上运行的 WPS 服务可在任何支持 WPS 的客户端中使用。
客户端的类型
web 浏览器是 WPS 服务最简单的客户端。不过,还有一些第三方客户端也可以使用 WPS 服务。要使用 ArcGIS Server 所托管的 WPS 服务,客户端必须支持 WPS 1.0.0。有关能够使用 WPS 服务的第三方客户端和库的详细信息,请访问以下链接:
URL 结构
要使用 WPS 服务,您需要了解 URL 链接地址的结构。URL 链接需要遵循下面的模式:
http://gisserver.domain.com:6080/arcgis/services/folder/service/GPServer/WPSServer?
例如,如果您在地理处理服务 WPSDemoService 中启用了 WPS 功能并将其发布到服务器 gisserver(端口号为 6080)上名为 DemoFolder 的文件夹中,则 URL 将如下所示:
http://gisserver:6080/arcgis/services/DemoFolder/WPSDemoService/GPServer/WPSServer?
GetCapabilities、DescribeProcess 和 Execute 操作的 WPS 请求都可通过 HTTP 发送至此 URL。这些请求的响应和异常随后将返回到客户端。有关以上操作及其参数的详细信息,请参阅 OGC WPS 1.0.0 规范。