GetCapabilities 请求 |
GetCapabilities 操作的主要请求参数如下表所示:
表1 GetCapabilities 操作请求主要参数
请求参数 | 是否必需 | 描述 |
VERSION=version | 否 |
请求版本号。 如果服务器不支持所请求的版本,会根据 OGC 标准返回一个不同的版本。值是 x.y.y 形式,x 为任意非负整数,y 为[0-99]之间的整数。 |
SERVICE=WMS | 是 |
服务类型。 请求 WMS 服务,请求类型需要设为“WMS”。 |
REQUEST=GetCapabilities | 是 |
请求名称。 请求 GetCapabilities 操作,请求名称需要设为“GetCapabilities”或者“capabilities”(capabilities 是 1.0.0 版本的,不赞成使用,支持该值的目的是向后兼容)。 |
UPDATESEQUENCE=string | 否 |
用于缓存控制的序列号或字符串。 该参数可以保证缓存的一致性。 该参数的值可以是一个整数,符合 ISO 8601:2004格式的时间戳字符串,或者其他任意字符串。 服务器如果在 Capbilities XML 文档中包含 UpdateSequence 值,那么当 Capabilities 发生变化时(比如,当有新的地图加到服务中时),UpdateSequence 的值应该是递增的。 SuperMap iServer 目前还没有实现该功能。 |
说明:参数的大小写不是必须的,请求参数的顺序也可以任意顺序排列。
对于 UPDATESEQUENCE 参数,如果客户端在 GetCapabilities 请求参数中包含了该参数,那么服务器将基于服务器元数据的 UPDATESEQUENCE 值和客户端的 UPDATESEQUENCE 请求值进行响应,如下表:
表2 UPDATESEQUENCE 参数的使用
客户端请求的 UPDATESEQUENCE 值 | 服务器元数据 UPDATESEQUENCE 值 | 服务器响应 |
none | any | 最接近的 Capabilities XML。 |
any | none | 最接近的 Capabilities XML。 |
equal | equal | 异常: code=CurrentUpdateSequence |
lower | higher | 最接近的 Capabilities XML |
higher | lower | 异常: code=InvalidUpdateSequence |
GetCapabilities 操作的请求方式如下:
<ServiceRoot>?SERVICE=WMS&VERSION=version&REQUEST=GetCapabilities
ServiceRoot 为服务的 URI 根目录,请参见 服务的 URI 设置。
例如,本机 SuperMap iServer WMS 1.1.1 服务启动成功之后,访问 GetCapabilities 操作的 URI 是:http://localhost:8090/iserver/services/map-world/wms111/世界地图_Day?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetCapabilities。
该请求示例的响应结果请参见响应示例。