我想在我的地图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]
我的URL WMS错误?还是我的说法是错误的?
提前谢谢
PS:我与OpenLayers 5合作
编辑:我解决了我的问题,那是错误的服务器。
答案 0 :(得分:0)
这是正确的服务器,但您的代码有问题。
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'
});