我想在我的地图openLayers中显示一个流媒体管理系统,但什么也不显示。下面是我如何声明我的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
编辑:我解决了我的问题,它是错误的服务器。
发布于 2019-04-02 23:01:01
如果它是正确的服务器,那就是你的代码有一些问题。
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'
});
https://stackoverflow.com/questions/55476958
复制相似问题