Openlayers 不会从地理服务器打印图层



我尝试在我的网站上打印我的地理服务器图层。我的应用程序和地理服务器实例在不同的 tomcat 上运行,并使用不同的端口。

我注意到在我的 Firefox 网络检查器日志中,适当的 png 图像是从地理服务器下载的。我注意到 http 请求,例如:

http://localhost:8081/geoserver/wms?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetMap&FORMAT=image/png&TRANSPARENT=true&LAYERS=graves:graves&TILED=true&STYLES=graves&CQL_FILTER=not(id < 0)&WIDTH=256&HEIGHT=256&CRS=EPSG:2001&BBOX=4762.7,-7860.5599999999995,4905.6900000000005,-7717.57

当我在浏览器中使用这样的链接时,它会给我一个包含我的一些元素的 png。但是,我的应用程序不打印任何元素。

我的代码是这样的:

var projection = new ol.proj.Projection({
code: 'EPSG:2001',
extent: [4762.7, -8003.55, 4950.55, -7717.57],
units: 'm'
});
ol.proj.addProjection(projection);
var mapcenter = [4880, -7930];
var mapzoom = 2;
var view = new ol.View({
center: mapcenter,
projection: projection,
zoom: mapzoom
});
var wmsSource = new ol.source.TileWMS({
url: 'http://localhost:8081/geoserver/wms',
params: {'LAYERS': 'graves:graves', 'TILED': true, 'STYLES': 'graves' },
serverType: 'geoserver',
crossOrigin: 'anonymous'
});

var map = new ol.Map({
layers: [ 
new ol.layer.Tile({
source: wmsSource
})
],
target: 'map',
controls: ol.control.defaults({
attributionOptions: /** @type {olx.control.AttributionOptions} */ ({
collapsible: false
})
}),
view: view });

当然我也有一些div:

<div id="map" class="map" style="width: 1030px; height: 650px;border: 1px solid #0066CC;margin-bottom: 10px;"></div>

此问题的原因可能是什么?我在Firefox javascript控制台上看不到任何错误。我完全被困住了。

此致敬意

我终于解决了这个问题。问题出在tileWMS中的行中:

crossOrigin: 'anonymous'

删除它后,一切都按预期工作。 谢谢大家的支持!

相关内容

  • 没有找到相关文章

最新更新