Openlayers中wms图层的问题3

时间:2015-01-29 09:34:34

标签: openlayers-3 wms

我试图在Openlayers 3地图中添加图层。这是我要插入的:

new ol.layer.Image({ name: 'cartografia', style: 'cartografia', visible: true, source: new ol.source.ImageWMS({ url: 'http://www.geo.euskadi.net/arcgis/services/U11_AGS_WMS_Cartografia/MapServer/WMSServer?', params: { 'LAYERS': '1', 'STYLES': 'default' }, serverType: 'geoserver' }) })

当我转到webpage时,我可以看到XML,但我无法插入图层

我做错了什么?

2 个答案:

答案 0 :(得分:1)

我看了一下这个WMS,一切似乎都很好。我注意到,如果我将我的投影设置为3857,则不会抛出任何错误。此WMS不支持您提到的图层。确保您使用WMS上所需图层的受支持投影。

<Name>1</Name>
<Title>Itzalak / Sombras MDT LIDAR 2012 5000</Title>
<Abstract>Itzalak / Sombras MDT LIDAR 2012 5000</Abstract>
<CRS>CRS:84</CRS>
<CRS>EPSG:4326</CRS>
<CRS>EPSG:23030</CRS>
<CRS>EPSG:25830</CRS>

您可以看到地图uisng 4326的示例。在下面的链接中,

http://openlayers.org/en/v3.1.1/examples/epsg-4326.html

我使用以下代码将图层添加到使用EPSG的地图:4326,

var test = new ol.layer.Tile({
    source: new ol.source.TileWMS({
        url: 'http://www.geo.euskadi.net/arcgis/services/U11_AGS_WMS_Cartografia/MapServer/WMSServer',
        params: {
            'LAYERS': '1'
        }
    })
})

我在西班牙得到了以下结果。

enter image description here

答案 1 :(得分:0)

另一个问题是“serverType:'geoserver'”,因为WMS不是由GeoServer托管,而是由ESRI ArcGIS Server托管。

如果您保留serverType undefined并在视图选项中设置投影:'EPSG:4326',您的代码将有效。