目录
GeoServer 作为一个地图发布服务器,主要用于发布各种类型的服务数据,方便用户多样化的使用场景。GeoServer 是参考开放地理空间联盟(OGC)的Web Feature Service(WFS)、Web Coverage Service(WCS)、Web Map Service(WMS)等标准来实现的。下面我们具体说一下主要的几个服务:
一、WMS服务
Web地图服务(Web map service-WMS),利用具有地理空间位置信息的数据制作地图;WMS针对提供可定制的服务,是一个动态数据或用户定制地图(需结合SLD标准)的理想解决办法。
主要使用场景:
用于地图渲染和实时出图功能
WMS服务 官网介绍地址:(官方是英文文档)
https://docs.geoserver.org/stable/en/user/services/wms/reference.html
请求方法:
GetCapabilities:返回服务器元数据
示例请求地址:
http://localhost:8080/geoserver/wms?service=WMS&version=1.1.1&request=GetCapabilities
GetMap : 返回一个地图影像
示例请求地址:
http://localhost:8080/geoserver/wms?
request=GetMap
&service=WMS
&version=1.1.1
&layers=topp:states
&styles=population
&srs=EPSG:4326
&bbox=-145.15104058007,21.731919794922,-57.154894212888,58.961058642578&
&width=780
&height=330
&format=image/png
主要参数解释:
layers : 图层名称 冒号前面为工作空间名称 后面为图层名
styles :样式名称 可不填 不填为默认样式
srs :输出坐标系 EPSG编码 (支持动态投影)
bbox : 数据的四至范围 可以控制只看某个部分的数据
width : 输出的数据图片的宽度
height :输出的数据图片的高度
format : 输出格式 常用的image/png
GetFeatureInfo : 返回某特殊要素信息
DescribeLayer :获取图层描述信息
GetLegendGraphic :获取图例信息
GetStyles :获取样式信息
前三个比较常用
特征:
1.实时渲染的数据
2.数据支持实时更新和动态渲染
3.可以结合多种样式实现多样化渲染
4.如果数据量大会出现渲染效率慢(适用于小数据量场景)
5.最常用的地图服务之一
二、WFS服务
Web要素服务(Web Feature service-WFS),支持对地理要素的插入、更新、删除、检索和发现服务。该服务根据HTTP客户请求返回GML(Geography Markup Language、地理标识语言)数据;WFS通过OGC Filter构造查询条件,支持基于空间几何关系的查询,基于属性域的查询,基于空间关系和属性域的共同查询
主要使用场景:
用于地图数据的基本增删改查操作
用于数据的导出和高级查询(条件查询)
WFS服务 官网介绍地址:(官方是英文文档)
https://docs.geoserver.org/stable/en/user/services/wfs/reference.html
请求方法:
GetCapabilities :生成描述服务器提供的 WFS 服务以及有效的 WFS 操作和参数的元数据文档
请求示例:
http://example.com/geoserver/wfs?service=wfs&version=1.1.0&request=GetCapabilities
DescribeFeatureType: 返回 WFS 服务支持的要素类型的描述
请求示例:
http://example.com/geoserver/wfs?service=wfs&version=2.0.0&request=DescribeFeatureType
GetFeature : 获取要素实例请求提供服务(数据查询)
请求参数:
http://example.com/geoserver/wfs?service=wfs&version=2.0.0&request=GetFeature&typeNames=namespace:featuretype
typeNames : 图层名称
Transaction : 通过创建、更新和删除来编辑现有要素类型
LockFeature :防止通过永久特征锁定编辑特征
比较常用到的是前三个。
特征:
1.服务器端进行所有地图的渲染
2.为了返回纯地理数据而设计,不包含任何关于绘制数据相关
3.可以实现高级查询和点图查询等功能
4.最常用的地图服务之一
三、WMTS服务
Web地图瓦片服务(Web Map Tile Service -WMTS),提供一种采用预定义图块方法发布数字地图服务的标准化解决方案。弥补WMS不能提供分块地图的不足。WMTS提供静态数据(基础地图)来增强伸缩性;
主要使用场景:
用于地图数据缓存切片
加载无需更新要素地图数据
区域性比较大的底图数据
WMTS服务是由Geoserver插件GeoWebCache实现
请求方法:
GetCapabilities:获取服务的元信息
请求示例:
http://localhost:8080/geoserver/gwc/service/wmts?service=WMTS&version=1.0.0&request=GetCapabilities
GetTile:获取缓存的瓦片
请求示例:
http://localhost:8080/geoserver/gwc/service/wmts?layer=topp:states&style=&tilematrixset=EPSG:4326&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image/png&TileMatrix=EPSG:4326:5&TileCol=12&TileRow=8
主要参数解释:
layer :图层名称 冒号前为工作空间名称 后为图层名
style : 样式名,可为空
tilematrixset : 切片方案名称
Format :输出格式
TileMatrix : 切片方案名:切片层级
TileCol : 切片列
TileRow : 切片行
GetFeatureInfo:获取点选的要素信息
请求示例:
http://localhost:8080/geoserver/gwc/service/wmts?VERSION=1.0.0&LAYER=topp:states&STYLE=&TILEMATRIX=EPSG:4326:5&TILEMATRIXSET=EPSG:4326&SERVICE=WMTS&FORMAT=image/png&SERVICE=WMTS&REQUEST=GetFeatureInfo&INFOFORMAT=text/html&TileCol=12&TileRow=9&I=213&J=11
特征:
1.对数据进行缓存,减小前端渲染压力
2.数据不会出现频繁更新
3.数据量大或者区域面积广
4.需要制定切片规则(切片方案)
5.最常用的地图服务之一
四、WCS服务
Web Coverage Service(WCS)是发布coverage数据,现在这个的需求已经很少了,几乎用不到了,不在赘述。