Pergunta

É possível obter uma lista de todas as camadas servidas pelo GeoServer? Ou seja, existe alguma solicitação de URL específica para enviar isso?

Foi útil?

Solução

Os recursos estão vinculados na página inicial do Geoserver cada lista de camadas servidas através de vários serviços:

  • Os recursos do WMS listam camadas que suportam solicitações de imagens de azulejos
  • Os recursos do WFS listam camadas que suportam solicitações de dados vetoriais
  • Os recursos do WCS listam camadas que suportam consultas rasters

Uma amostra de solicitação WMS ficaria assim:

http://demo.opengeo.org/geoserver/wms?request=getcapabilities&Service=wms&version=1.0.0

Outras dicas

Então, apenas por completude, aqui está um exemplo de como obter uma lista/matriz de camadas:

        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..");
        });
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top