我想在我的地图openLayers中显示流WMS,但没有任何显示。我在这里如何声明我的WMS:
var IGN = new ImageLayer({
source: new ImageWMS({
url: 'https://inspire.cadastre.gouv.fr/scpc/76758.wms?service=WMS&request=GetMap',
params: {'LAYERS': 'AMORCES_CAD',
'FORMAT': 'image/png'},
ratio: 1,
serverType: 'geoportail'
}),
visible : false,
name : 'IGN'
});
然后当我在图层中声明我的地图时:
layers: [baseLayer,Terrain,foncier2,satellite,IGN]
我的网址WMS错了?或者我的陈述是错的?
提前谢谢你
PS:我与OpenLayers 5合作
编辑:我解决了我的问题,这是错误的服务器。
它是正确的服务器是你的代码的一些问题。
url超过必要的时间,geoportail不是OpenLayers识别的服务器类型,visible : false
将停止显示图层。
var IGN = new ImageLayer({
source: new ImageWMS({
// url: 'https://inspire.cadastre.gouv.fr/scpc/76758.wms?service=WMS&request=GetMap',
url: 'https://inspire.cadastre.gouv.fr/scpc/76758.wms',
params: {'LAYERS': 'AMORCES_CAD',
'FORMAT': 'image/png'},
ratio: 1,
// serverType: 'geoportail'
}),
// visible : false,
name : 'IGN'
});
但即使有这些更改,我也会从服务器收到错误
Mauvaise Requête
Taille de l'image invalide.
使用非常小的地图确实有效,但是图层可以在任何尺寸的地图上使用:
var IGN = new TileLayer({
source: new TileWMS({
url: 'https://inspire.cadastre.gouv.fr/scpc/76758.wms',
params: {'LAYERS': 'AMORCES_CAD',
'FORMAT': 'image/png'},
}),
name : 'IGN'
});