假设我有一个Geoserver,运行WFS暴露的两层(带属性):
StreetLayer (geom, StreetName, Lanes, Length)
HouseLayer (geom, Address)
Run Code Online (Sandbox Code Playgroud)
现在,如果我想查询所有街道的StreetLayer但只获取StreetName和Lanes属性,我会向此发送一个GET请求:
http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer&propertyname=StreetName,Lanes
Run Code Online (Sandbox Code Playgroud)
但是如果我现在想要查询HouseLayer和StreetLayer呢?这不起作用:
http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer,HouseLayer&propertyname=StreetName,Lanes,Address
Run Code Online (Sandbox Code Playgroud)
我得到一个例外,说StreetName和Lanes不在HouseLayer中,反之亦然.我需要提出多个请求吗?
编辑:
所以我想做的是这样的:
http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer,HouseLayer&propertyname=(StreetName,Lanes),(Address)
Run Code Online (Sandbox Code Playgroud)
小智 11
几乎在那里,你只需要在propertyName中有一个额外的逗号.这个对抗vanilla GeoServer安装:
http://localhost:8087/gswps/topp/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=topp:tasmania_cities,topp:tasmania_roads&propertyName=(ADMIN_NAME,CITY_NAME)(TYPE)
Run Code Online (Sandbox Code Playgroud)
看到?之间没有命令)和(
| 归档时间: |
|
| 查看次数: |
5123 次 |
| 最近记录: |