GeoServer-WMS,WFS,WCS

GeoServer-WMS,WFS,WCS

[email protected]

2016年8月23日重构

2016年10月17日添加jsonp操作

1 方法:发布WMS

1.1 目标:WMS(OpenGIS Web Map Service),将地图数据发布为WEB服务,提供网络地图图片。

功能包括:GetCapabilities,GetMap,GetFeatureInfo,GetLegendGraphic。

1.2 发布:图层上设置发布信息,保存后就可以发布了。

1.3 测试:使用QGIS测试

1.3.1获取WMS地址

1.3.1.1  获取WMS地址:http://服务器IP:PORT/geoserver[/工作空间[/图层名]]/wms

如果可选部分不使用的话,将获取其下所有的服务。

1.3.1.2  或从WMS的文档中获取:在OnlineReference中获取。

1.3.1.3  或在LayerPreview中选择需要服务:

从中获取服务地址,只需要到WMS就可以,http://localhost:8080/geoserver/testShp/wms

 

1.3.2在Qgis加载WMS服务:设置连接参数

将WMS地址输入,设置名字,就可以查看当前工作区中所有WMS服务。选择需要的图层,加入到Qgis中进行显示。

 

1.4 示例:

WMS GetMap:

http://localhost:8080/geoserver/testShp/wms?service=WMS&version=1.1.0&request=GetMap&layers=testShp:states&styles=&bbox=-124.73142200000001,24.955967,-66.969849,49.371735&width=768&height=330&srs=EPSG:4326&format=application/openlayers

WMS GetFeatureInfo:

http://localhost:8080/geoserver/testShp/wms?SERVICE=WMS&VERSION=1.1.1&REQUEST=GetFeatureInfo&FORMAT=image%2Fpng&TRANSPARENT=true&QUERY_LAYERS=testShp%3Astates&LAYERS=testShp%3Astates&STYLES&INFO_FORMAT=text%2Fhtml&FEATURE_COUNT=50&X=50&Y=50&SRS=EPSG%3A4326&WIDTH=101&HEIGHT=101&BBOX=-97.82817456250004%2C36.41678068750001%2C-88.95122143750004%2C45.29373381250001

返回值:

Geoserver GetFeatureInfo output

states

fid

STATE_NAME

STATE_FIPS

SUB_REGION

STATE_ABBR

LAND_KM

WATER_KM

PERSONS

FAMILIES

HOUSHOLD

MALE

FEMALE

WORKERS

DRVALONE

CARPOOL

PUBTRANS

EMPLOYED

UNEMPLOY

SERVICE

MANUAL

P_MALE

P_FEMALE

SAMP_POP

states.36

Iowa

19

W N Cen

IA

144715.989

1037.659

2776755.0

740819.0

1064325.0

1344802.0

1431953.0

1013757.0

970933.0

156930.0

16373.0

1340242.0

63641.0

429860.0

217271.0

0.484

0.516

579075.0


参考:http://blog.csdn.net/chenxiaodan_danny/article/details/42675411

2方法:发布WFS

2.1 目标:WFS(Web Feature Service)目的是提供对矢量地图的查询、编译等操作。

功能包含:GetCapabilities,DescribeFeatureType,GetFeature(查询),LockFeature(加锁,用于事务),Transaction(编辑事务)。

2.2 发布:将工作区设置为WFS启用,然后在Layer中设置发布属性。

参考:http://girona-geoserver-workshop.readthedocs.org/en/latest/overview/wfs.html

https://wiki.state.ma.us/confluence/display/massgis/GeoServer+-+WFS+-+Extract+-+Shapefile+Format

2.2.1启用jsonp输出格式:默认是禁止的。

参考:

http://gis.stackexchange.com/questions/57494/geoserver-2-3-how-to-enable-jsonp

http://stackoverflow.com/questions/15647259/geoserver-not-returning-correct-json-for-wfs-using-openlayers-protocol-script

在web.xml中去掉jsonp的注释。

jsonp将返回parseResponse()函数调用。

示例:参见:leaflet.docx《Identify地图元素信息:JSONP跨域操作》部分。

2.3 测试:QGIS加载WFS,并执行编辑。

2.3.1获取WFS地址:与WMS相似

2.3.1.1  获取WMS地址:http://服务器IP:PORT/geoserver[/工作空间[/图层名]]/WFS

2.3.1.2  或从WMS的文档中获取:在Operation中获取Url,但这样获取的是所有的WFS。

2.3.1.3  或在LayerPreview中选择需要服务,从中获取xsi:schemaLocation中找到wfs地址。

2.3.2在Qgis加载WFS服务:设置连接参数,添加图层。

 

WFS可以进行图层编辑

2.4 示例:

http://localhost:8080/geoserver/wfs?request=GetFeature&version=1.0.0&typename=testShp:states&featureid=states.2

返回值:

This XML file doesnot appear to have any style information associated with it. The document treeis shown below.

unknown

-77.008232,38.966557-76.911209,38.889988 -77.045448,38.78812 -77.035248,38.813915-77.045189,38.829365 -77.040405,38.838413 -77.039078,38.862431-77.067886,38.886101 -77.078949,38.9156 -77.122627,38.93206-77.042389,38.993431 -77.008232,38.966557

Districtof Columbia

11

SAtl

DC

159.055

17.991

606900.0

122087.0

249634.0

282970.0

323930.0

229975.0

106694.0

36621.0

111422.0

303994.0

23442.0

65498.0

22407.0

0.466

0.534

72696.0

 

3方法:发布WCS

3.1 目标:WCS(Web Coverage Service),目标是发布原始栅格数据。

功能包括GetCapabilities,GetCoverage,DescribeCoverage。

3.2 发布:工作空间启用WCS并设置图层的发布属性。

3.3 测试:QGIS加载WCS

3.3.1获取WMS地址

3.3.1.1  获取WMS地址:http://服务器IP:PORT/geoserver[/工作空间[/图层名]]/WCS

3.3.1.2  或从WMS的文档中获取:在Operation中获取Url,但这样获取的是所有的WCS。

 

3.3.1.3  或演示中获取地址

3.3.2QGIS中加载WCS

WCS图片加载完成后,可能会有空白的地方,这是因为默认将0值设置为无值像素。

在图层属性中将无值像素去掉,可以正常显示。

3.4 测试:使用演示-》WCS Request Builder可以生成请求POST的XML和测试。

参考:

http://support.supermap.com.cn:8090/iserver/help/html/mergedProjects/iServerJavadoc/com/supermap/services/protocols/wcs/wcs.html

示例:

 

GetCoverage则下载图像。

点击Generate就可以生成XML。

  nurc:Img_Sample

 

   

     

        -130.8516820.7052

        -62.005454.1141

     

     

       

         

            0 0

            983597

         

       

       x

       y

     

   

 

 

    EPSG:4326

    GeoTIFF

 

你可能感兴趣的:(GeoServer)