在 Web 浏览器中与 WMS 服务进行通信

本主题介绍了在 Web 浏览器中如何使用 URL 参数与 WMS 服务进行通信。

WMS 请求和响应

兼容 WMS 服务器所支持的每种操作的在线资源都是一个 HTTP 统一资源定位器 (URL),所以 WMS 服务可被视为一项表述性状态转移 (REST) 服务。与标准 Web 服务不同,使用 WMS 服务不需要 SOAP 客户端,而 Web 浏览器便是最简单的客户端。通过将 URL 请求发送到服务器并在浏览器中查看 XML 文档或图像形式的相应响应,您可以获取 WMS 服务的服务级别元数据、地图图像或要素属性值。

以下是一些 ArcGIS Server WMS 服务所支持的每项操作的请求和响应的示例。

WMS GetCapabilities 请求

http://sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?service=WMS&request=GetCapabilities&version=1.3.0

XML 响应

WMS GetCapabilities XML 响应

WMS GetMap 请求

http://sampleserver1.arcgisonline.com/ArcGIS/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?VERSION=1.3.0&REQUEST=GetMap&CRS=CRS:84&BBOX=-178.217598,18.924782,-66.969271,71.406235&WIDTH=765&HEIGHT=360&LAYERS=0,1,2&STYLES=,,Symbolizer&EXCEPTIONS=application/vnd.ogc.se_xml&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE

响应地图

WMS GetMap 响应地图

WMS GetFeatureInfo 请求

http://sampleserver1.arcgisonline.com/arcgis/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer/WMSServer?REQUEST=GetFeatureInfo&SERVICE=WMS&VERSION=1.1.1&LAYERS=0&STYLES=default&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&SRS=EPSG:4326&BBOX=-125.192865,11.2289864971264,-66.105824,62.5056715028736&WIDTH=1044&HEIGHT=906&QUERY_LAYERS=0&X=103&Y=462

XML 响应

WMS GetFeatureInfo XML 响应

WMS GetStyles 请求

http://myserver/arcgis/services/OGC/SanFrancisco/MapServer/WMSServer?Service=WMS&Request=GetStyles&Version=1.3.0&Layers=pizzastores,highways,blockgroups

XML 响应

WMS GetStyles XML 响应

WMS GetLegendGraphic 请求

http://myserver/arcgis/services/OGC/SanFrancisco/MapServer/WMSServer?Service=WMS&Request=GetLegendGraphic&Version=1.1.1&Layer=blockgroups&Style=population_dist&Format=image/png&Width=128&Height=64&transparent=false&bgcolor=0xffff00&SLD=http://zeon/resources/cr/CR53077/sld.xml

响应图例图形

WMS GetLegendGraphic 响应图形

具有 TIME 参数的 WMS GetMap 请求

http://myserver/arcgis/services/OGC/Fire/MapServer/WMSServer?VERSION=1.3.0&REQUEST=GetMap&CRS=CRS:84&BBOX=-111.232092,43.910823,-109.455485,45.339498&WIDTH=626&HEIGHT=504&LAYERS=fire&STYLES=&EXCEPTIONS=application/vnd.ogc.se_xml&FORMAT=image/png&BGCOLOR=0xFFFFFF&TRANSPARENT=TRUE&TIME=1988-08-01T00:00:00/1988-08-11T00:00:00

响应地图

具有 TIME 参数响应地图的 WMS GetMap 请求
注意注意:

许多情况下,Web 浏览器可能并不是首选的 WMS 客户端,但对于 WMS 服务器和客户端之间的通信,Web 浏览器却始终是一个很好的追踪和调试工具。

WMS 请求参数

OGC 网络地图服务规范定义了一份可用于每项 WMS 操作的完整请求参数列表。有关 OGC WMS 执行规范的不同版本,请参见以下链接:

版本 1.3.0

版本 1.1.1

版本 1.1.0

版本 1.0.0

下表列出了可用于在 ArcGIS Server 中执行 WMS 的所有请求参数,这只是规范所定义的参数的一个子集。

WMS GetCapabilities 请求 URL 的参数

必选/可选

默认值

描述

VERSION/WMTVER

可选

1.3.0(9.3 及以上)

1.1.1 (9.2)

请求版本。只在 WMS 1.0.0 中使用 WMTVER;其他情况下使用 VERSION

SERVICE

必选

N/A

服务类型。必须设置为 WMS。该参数在 WMS 1.0.0 中不可用。

REQUEST

必选

N/A

请求名称。必须设置为 GetCapabilities。对于 WMS 1.0.0,则必须设置为 capabilities

FORMAT

可选

text/xml(9.3 及以上)

服务元数据的输出格式。仅在 WMS 1.3.0 中可用。(例如 application/vnd.ogc.wms_xmltext/plaintext/html)。

WMS GetMap 请求 URL 的参数

必选/可选

默认值

描述

VERSION/WMTVER

必选

N/A

请求版本。只在 WMS 1.0.0 中使用 WMTVER;其他情况下使用 VERSION

REQUEST

必选

N/A

请求名称。必须设置为 GetMap。对于 WMS 1.0.0,则必须设置为 map

LAYERS

必选

N/A

一个或多个地图图层的逗号分隔列表(例如 0,1,2layer1,layer2)。

STYLES

必选

N/A

一种或多种样式的逗号分隔列表,每个请求图层一种样式(例如 0,1,2style1,style2)。

CRS/SRS

必选

N/A

坐标参照系统。CRS 仅可在 WMS 1.3.0 中使用,其他情况下使用 SRS(例如 EPSG:4326EPSG:4269)。

BBOX

必选

N/A

以 CRS/SRS 为单位的(左下和右上)边框角(例如 -180,-90,180,90)。

WIDTH

必选

N/A

以像素为单位的地图图片宽度(例如 1024)。

HEIGHT

必选

N/A

以像素为单位的地图图片高度(例如 768)。

FORMAT

必选

N/A

地图的输出格式(例如 image/pngimage/jpegimage/svg+xml)。

TRANSPARENT

可选

False

确定背景是否透明(例如 TrueFalse)。

BGCOLOR

可选

0xFFFFFF

十六进制 RGB 地图背景色(例如 0xFFFFFFFFFFFF)。

SLD

可选

""

样式化图层描述符 XML 文件的 URL。

SLD_BODY

可选

""

样式化图层描述符文件的 XML 正文。

TIME

可选

""

请求图层的时间值。

EXCEPTIONS

可选

text/xml (WMS 1.3.0)

application/vnd.ogc.se_xml(WMS 1.1.1 和 WMS 1.1.0)

application/vnd.ogc.inimage (WMS 1.0.0)

报告异常应使用的格式(例如 text/xmltext/html)。

WMS GetFeatureInfo 请求 URL 的参数

必选/可选

默认值

描述

VERSION/WMTVER

必选

N/A

请求版本。只在 WMS 1.0.0 中使用 WMTVER;其他情况下使用 VERSION

REQUEST

必选

N/A

请求名称。必须设置为 GetFeatureInfo。对于 WMS 1.0.0,则必须设置为 feature_info

地图请求部分

必选

N/A

生成地图所需信息的 GetMap 请求参数的部分副本。

QUERY_LAYERS

必选

N/A

一个或多个待查询地图图层的逗号分隔列表(例如 0,1,2layer1,layer2)。

INFO_FORMAT

必选 (WMS 1.3.0)

可选(WMS 1.1.1、1.1.0 和 1.0.0)

无效 (WMS 1.3.0)

text/xml(WMS 1.1.1、1.1.0 和 1.0.0)

要素信息的返回格式(例如 text/xmltext/html)。

I/X

必选

N/A

要素在地图坐标系中以像素为单位的 X 坐标(例如 100)。对于 WMS 1.3.0,使用 I;其他情况下使用 X

J/Y

必选

N/A

要素在地图坐标系中以像素为单位的 Y 坐标(例如 100)。对于 WMS 1.3.0,使用 J;其他情况下使用 Y

TIME

可选

""

请求图层的时间值。

EXCEPTIONS

可选

text/xml (WMS 1.3.0)

application/vnd.ogc.se_xml(WMS 1.1.1 和 WMS 1.1.0)

application/vnd.ogc.inimage (WMS 1.0.0)

报告异常应使用的格式(例如 text/xmltext/html)。

WMS GetStyles 请求的参数

必选/可选

默认值

描述

VERSION

必选

1.3.0(9.3 及以上)

1.1.1 (9.2)

OGC 接口要求的版本。

REQUEST

必选

N/A

请求名称。必须设置为 GetStyles

LAYERS

必选

N/A

要检索样式描述的指定图层的逗号分隔列表。

SLDVER

可选

1.0.0 (10.0)

为 SLD 文档请求的 SLD 版本。仅支持 1.0.0 版本。

WMS GetLegendGraphic 请求的参数

必选/可选

默认值

描述

VERSION

必选

1.3.0(9.3 及以上)

1.1.1 (9.2)

OGC 接口要求的版本。

REQUEST

必选

N/A

请求名称。必须设置为 GetLegendGraphic

LAYER

必选

N/A

要生成图例图形的图层。

STYLE

可选

默认

要生成图例图形的图层的样式。如果不存在,将选择默认样式。该样式可以是任何可用于图层的有效样式,包括非 SLD 内部定义样式。

RULE

可选

""

要用于生成图例图形的样式规则(如果适用)。样式具有多条规则但未选择任何特定规则时,地图服务负责生成表示所有样式规则的图形。

SLD

可选

""

指定 SLD 文档的引用。其工作原理与 WMS GetMap 操作的 SLD= 参数相同。

SLD_BODY

可选

""

允许 HTTP GET 请求直接包括 SLD 文档。其工作原理与 WMS GetMap 操作的 SLD_BODY 参数相同。

FORMAT

可选

image/png (png24)

用于返回图例的 MIME 文件格式类型。所允许的值与 WMS GetMap 请求的 FORMAT= 参数相同。

WIDTH

可选

取决于具体的图例图像

对返回的图形提供以像素为单位的宽度提示。

HEIGHT

可选

取决于具体的图例图像

对返回的图形提供以像素为单位的高度提示。

EXCEPTIONS

可选

text/xml (WMS 1.3.0)

application/vnd.ogc.se_xml(WMS 1.1.1 和 WMS 1.1.0)

application/vnd.ogc.inimage (WMS 1.0.0)

用于返回异常的 MIME 格式类型。所允许的值与 WMS GetMap 请求的 EXCEPTIONS= 参数相同。


3/7/2012