OpenLayers WMS何时物理调用远程服务器?

时间:2012-03-05 16:03:23

标签: openlayers

我正在尝试简化我的应用程序,并想知道OpenLayers何时实际调用WMS服务器?此外,层可见性是否也在调用中起作用?

实例化图层时是否会发生

var layer = new OpenLayers.Layer.WMS("MyLayer"... 

或将图层添加到地图后?

map.addLayer(layer);

感谢您的帮助!

1 个答案:

答案 0 :(得分:3)

添加图层时会进行调用。但是,这不是你的想法。与创建WFS请求并获得WFS响应的WFS调用不同。 WMS层的工作方式不同。当您实例化图层时,openlayers将根据大小计算所需的所有图块。然后当你添加图层时,openlayers生成html,通过<img src=...发生的简单GET请求来发出请求。例如,它可能会生成有4个图像的html,其中IMG元素SRC等于调用您的WMS服务返回openlayers将用于布局的图块。有点像:

  

http://vmap0.tiles.osgeo.org/wms/vmap0?LAYERS=basic&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&STYLES=&FORMAT=image%2Fjpeg&SRS=EPSG%3A4326&BBOX=0,33.75,11.25,45&WIDTH=256&HEIGHT=256

看看这个html检查示例:

enter image description here

我建议this article帮助您理解它。