请求参数
GetFeatureInfo 操作的主要请求参数如下表所示:
表1 GetFeatureInfo 操作请求主要参数
请求参数 |
是否必需 |
描述 |
VERSION=version |
是 |
请求版本号。 |
REQUEST=GetFeatureInfo |
是 |
请求名称。 请求 GetFeatureInfo 操作,请求名称需要设为“GetFeatureInfo”。 |
<map_request_copy> |
是 |
GetMap 请求参数的部分副本。 不包含其中的 VERSION 和 REQUEST 参数。决定查询的目标地图,即在哪个地图图片上查询。 |
QUERY_LAYERS=layer_list |
是 |
待查询的图层列表,图层之间以英文逗号分隔。 |
是 |
要素信息的返回格式(MIME 类型)。 可以为 application/vnd.ogc.wms_xml , application/geojson , text/xml , text/html。 |
|
FEATURE_COUNT=number |
否 |
要返回信息的要素的数量(默认为1)。 以(I, J)为中心点,根据 GetMap 操作中的请求参数 BBOX,Width 和 Height 确定初始查找范围半径,对指定的查询图层进行查找。如果查询返回结果小于用户指定的 number 值,将查找半径扩大一倍继续查找,如果查询结果数目满足用户要求返回的要素数目,返回结果,否则继续扩大半径。当查找半径达到初始搜索半径的8倍时,终止查询,返回查询结果,进入下一图层的查询。 图层的查询顺序与待查询图层列表中的顺序一致。 |
是 |
以像素表示的要素 X 坐标(最左侧为0,向右递增)。 |
|
是 |
以像素表示的要素 Y 坐标(最上侧为0,向下递增)。 |
|
EXCEPTIONS=exception_format |
否 |
WMS 的异常错误报告格式(默认为 application/vnd.ogc.se_xml)。 |
BBOX=minx,miny,maxx,maxy |
否 |
同 GetMap。 使用该参数进行查询时支持返回 application/geojson 格式的响应体,响应体中包含图层名称 layerName,即 GetCapabilities 操作获取的能力文档中的 Title 值。 请注意:该参数和 layerDefs 参数必选其一,也可同时设置并将同时生效。 |
layerDefs |
否 |
属性过滤,语法为 {<layer1>:<layerDefs1>,<layer2>:<layerDefs2>},不同图层的过滤条件间以 ',' 分隔。 其中,<layer1>、<layer2>的值使用 GetCapabilities 操作获取的能力文档中 图层属性 Name 元素的值;支持的比较操作包括 =、<>、>、> =、<、<= ,支持的字符串匹配操作包括 BETWEEN AND 、 IN 、 like ,支持的逻辑关系判断包括 AND , OR , NOT。示例如下: layerDefs={"0.11":"Shape_Area <500 and OBJECTID>100","0.12": "STATE_NAME LIKE ‘N%'"} 使用该参数进行查询时支持返回 application/geojson 格式的响应体,响应体中包含图层名称 layerName。 请注意:该参数和 BBOX 参数必选其一,也可同时设置并将同时生效;该参数仅对矢量图层生效。 |
请求示例
GetFeatureInfo 操作的请求方式如下:
<ServiceRoot>?Version=version&REQUEST=GetFeatureInfo&<map_request_copy>& QUERY_LAYERS=layer_list&INFO_FORMAT=output_format&I=pixel_column&J=pixel_row
ServiceRoot 为服务的 URI 根目录,请参见 服务的 URI 设置。
例如,本机 SuperMap iServer WMS 1.3.0 服务启动成功之后,访问 GetFeatureInfo 操作的 URI 是:http://localhost:8090/iserver/services/map-world/wms130/世界地图_Day?VERSION=1.3.0&REQUEST=GetFeatureInfo&LAYERS=0.8,0.11,0.3&STYLES=&CRS=CRS:84&BBOX=-180,-90,180,90&WIDTH=800&HEIGHT=400&FORMAT=image/png&QUERY_LAYERS=0.11&INFO_FORMAT=text/xml&I=650&J=150&layerDefs={"0.11":"SMID<200"}&INFO_FORMAT=application/geojson。
该请求示例的响应结果请参见 响应示例。