是否可以获得geoserver服务的所有图层的列表?即是否有一些特定的 url 请求可以发送?
问问题
13529 次
2 回答
9
地理服务器主页上的功能链接每个列出通过各种服务提供的图层:
- WMS 功能列出了支持平铺图像请求的图层
- WFS 功能列出了支持矢量数据请求的层
- WCS 功能列出了支持栅格查询的图层
示例 WMS 请求如下所示:
http://demo.opengeo.org/geoserver/wms?request=GetCapabilities&service=WMS&version=1.0.0
于 2010-10-07T03:09:56.910 回答
4
因此,为了完整起见,这里有一个如何获取层列表/数组的示例:
var formatter = new OpenLayers.Format.WMSCapabilities();
var endpoint = "path/to/wms/endpoint";
var layers = [];
// async call to geoserver (I'm using angular)
$http.get(endpoint + 'request=GetCapabilities').
success(function(data, status, headers, config) {
// use the tool to parse the data
var response = (formatter.read(data));
// this object contains all the GetCapabilities data
var capability = response.capability;
// I want a list of names to use in my queries
for(var i = 0; i < capability.layers.length; i ++){
layers.push(capability.layers[i].name);
}
}).
error(function(data, status, headers, config) {
alert("terrible error logging..");
});
于 2015-02-11T22:54:03.763 回答