Как получить тип геометрии слоя wms в openlayer?

     var wmsLayer = new OpenLayers.Layer.WMS("WMSLayer",
                "localhost:8080/geoserver/workspacewms",
                {
                   srs: 'EPSG:4326',
                   layers: "workspace:name1",format:'image/png',
                   transparent: true
                },
                { 
                   isBaseLayer: false,
                } 
);
    map.addLayer(wmsLayer);

1 ответ

Базовый протокол WMS не может предоставить вам эту информацию.

Поскольку пример, который вы просматриваете, кажется специфичным для GeoServer, вы можете запустить WFS DescribeFeatureType на том же слое, чтобы получить эту информацию.

Немного более стандартный способ - сначала выполнить запрос WMS/SLD DescribeLayer (если сервер поддерживает его, но он необязателен, GeoServer поддерживает его), который, в свою очередь, даст вам ссылку на WFS DescribeFeatureType, поэтому, в конце концов, в итоге вы просто делаете еще один шаг (но при этом вы следуете спецификациям OGC к букве).

Другие вопросы по тегам