我正在尝试使用Openlayers 5 WMS图层来显示我的Geoserver数据,但是它不能正常工作。某些缩放级别未加载地图图块。发生这种情况时,我会在浏览器控制台中看到以下错误:
400:图块索引的X,Y值计算为 {584.26,703.01}必须四舍五入为 {584,703},并且超过了10%的阈值。也许客户是 使用错误的来源?
在加载地图图块的缩放级别上,我看到地图未按预期的方式居中。
我也尝试过使用Openlayers 3,但是存在相同的问题。
这是我使用的代码:
let layer = new ol.layer.Tile({
source: new ol.source.TileWMS({
serverType: 'geoserver',
projection: 'EPSG:900913',
url: USER_GEOSERVER_ADDRESS,
params: {
LAYERS: GEOSERVER_LAYER_NAME,
VERSION: '1.1.1',
FORMAT: 'image/png',
TILED: 'true'
}
})
});
let olMap = new ol.Map({
target: 'olMap',
layers: olMapLayers,
view: new ol.View({
center: ol.proj.fromLonLat([37.6, 55.7]),
projection: 'EPSG:900913',
zoom: 8
})
});
Openlayers 2 WMS在我的Geoserver上运行良好:
let map = new OpenLayers.Map('olMap', {
projection: new OpenLayers.Projection('EPSG:900913'),
displayProjection: new OpenLayers.Projection("EPSG:4326"),
units: 'meters',
renderer: 'canvas',
numZoomLevels: 14,
maxExtent: new OpenLayers.Bounds(-18639016.68, -20037508.34, 21436000, 20037508.34),
});
let layer = new OpenLayers.Layer.WMS('GeoServer', USER_GEOSERVER_ADDRESS, {
LAYERS: GEOSERVER_LAYER_NAME,
STYLES: '',
format: 'image/png',
tiled: true
}, {
isBaseLayer: true
});
map.addLayer(layer);
也许我应该使用Openlayers 5中的一些特定配置选项来使WMS层正常工作?