1.WMS服务请求参数
一般WMS的请求地址如下:
http://localhost:8080/geoserver/topp/wms?service=WMS&versi on=1.1.0&request=GetMap&layers=topp:states&styles=&bbox=- 124.73142200000001,24.955967,-66.969849,49.371735&width=780&height=330 &srs=EPSG:4326&format=application/openlayers
service:解释发送那种请求类型给geoserver,service=WMS表示我们想要请求地图;
version:请求的geoserver版本;
request:表示请求调用的方法,这里为GetMap;
layer:表示请求的图层标示。layers=topp:states一般表示工作区wei topp,存储为states;
styles:表示请求图层渲染需要用到的样式。style为空表示使用默认的样式;
bbox:是显示地图的边界框,或者地图上的一个区域。格式为minx,miny,maxx,maxy;
width\height:表示返回区域地图图片的尺寸;
srs:表示采用投影系的编码,这里为EPSG: 4326;
2.WMS输出格式
比较常用的有:JPEG、KML、KMZ、PDF、PNG(image/png)、SVG(image/svg+xm)、TIFF(image/tiff, image/tiff8, or image/geotiff8)。
下面的地址可参考geoserver所有的输出个格式:
http://docs.geoserver.org/stable/en/user/services/wms/outputformats.html
3.WFS请求格式
和WMS请求相似,只是参数值不一样而已,request为GetFeature,最大Features数50,outputFormat输出格式。
http://localhost:8080/geoserver/topp/ows? service=WFS& version=1.0.0& request=GetFeature& typeName=topp:states& maxFeatures=50& outputFormat=csv
4.WFS输出格式
CSV:是数据转换经常使用的格式,用于导入到表格或者其他外部数据库时经常会用到。
GML:它的格式看着感觉和KML相似,KML格式是基于GML的,GML能被转换成KML,都是基于XML格式。GML的作用在于可控制矢量图形,而KML支持3D图形。输出格式定义为:GML2、 GML/3.1.1或者GML/3.2。
GML2:是多个GML的压缩形式,输出格式定义为:GML-GZIP。
GeoJSON:是JSON格式字符串,附加了地理空间数据的主键标示。可以直接在Web应用中使用getJSON方法转换成JSON对象使用。输出格式定义为:json。
Shapefile:在GIS数据转换场景应用中,shapefile是最常用的输出格式。它不经是对构建web地图很有用,而且在需要给别是展示静态数据时也常用到。shapefile文件是zip压缩格式,解压后可看到包含多个文件。
额外还包括一些扩展的输出格式:
GDAL、OGR:GDAL用于WFS输出栅格图形。使用ogr2ogr命令,可转换出若干输出格式。使用OGR可将某一个vector格式转换为另外格式。
详细参考地址:
http://docs.geoserver.org/latest/en/user/data/ gdal.html http://docs.geoserver.org/stable/en/user/ extensions/ogr.html http://www.gdal.org/ogr/ogr_formats.html
4.使用WMS Reflector缩减WMS请求参数
WMS REflector主要作用是缩减我们请求MWS服务的参数。由于我们请求WMS服务的地址,有些参数是固定不变的,不想每次都要传递。例如请求WMS一个完整的地址:
http://localhost:8080/geoserver/topp/wms?service=WMS&versi on=1.1.0&request=GetMap&layers=topp:states&styles=&bbox=- 124.73142200000001,24.955967,-66.969849,49.371735&width=780&heig ht=330&srs=EPSG:4326&format=image/png
使用Reflector,地址可缩减为:
http://localhost:8080/geoserver/wms/reflect?layers=topp:states
如果想改变其他参数直接附加上即可。例如我们想使用投影系编码:EPSG:900913。地址可写为:
http://localhost:8080/geoserver/wms/reflect?layers=topp:states&srs =EPSG:900913
但使用WMS Reflector需要注意的是它没有使用GeoWebCache。