带缓冲区的WMS GetFeatureInfo请求不返回任何结果(OpenLayers / MapServer)

我正在使用OpenLayers 4在Mapserver中使用WMS图层的缓冲区参数构建GetFeatureInfo url,以便在给定特定坐标的情况下找到该图层的最接近要素。

问题在于请求根本不会返回任何结果。因此,我不知道代码中是否存在错误或缺少某些内容。

以下是我的代码说明:

var layer = new ol.layer.Image({
    source: new ol.source.ImageWMS({
        url: 'http://www.juntadeandalucia.es/medioambiente/mapwms/REDIAM_PPHH_2012?',params: {'LAYERS': 'MSPF_POLY'},serverType: 'mapserver',crossOrigin: 'anonymous'
    })
});

// I create the layer only for requesting purpose so I don't add it to the map.

var coordinates = [311618.514508171,4040090.26715453];

var srs = this.map_.getProjection().code; //"EPSG:25830"

const getFeatureInfoParams = {
        'INFO_FORMAT': 'text/plain',//or application/vnd.ogc.gml
        'FEATURE_COUNT': 1,'SRS': srs,'Buffer': 10;
};

var viewResolution = this.map_.getMapImpl().getView().getResolution(); 
// 353.3212194629518

var urlToRequest = layer.getsource().getGetFeatureInfoUrl(coordinates,viewResolution,srs,getFeatureInfoParams);

return urlToRequest;
// urlToRequest is ==> http://www.juntadeandalucia.es/medioambiente/mapwms/REDIAM_PPHH_2012?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetFeatureInfo&FORMAT=image%2Fpng&TRANSPARENT=true&QUERY_LAYERS=MSPF_POLY&LAYERS=MSPF_POLY&INFO_FORMAT=text%2Fplain&FEATURE_COUNT=1&SRS=EPSG%3A25830&Buffer=10&I=50&J=50&CRS=EPSG%3A25830&STYLES=&WIDTH=101&HEIGHT=101&BBOX=293775.7929252919%2C4022247.5455716513%2C329461.2360910501%2C4057932.988737409

//I have seen that it always return I=50/J=50 and perhap this could be the problem I 
//don't know. It is that correct? The pixel coordinates shouldn't be different in 
//different bounding boxes values per request?
yhdyxq 回答:带缓冲区的WMS GetFeatureInfo请求不返回任何结果(OpenLayers / MapServer)

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2411528.html

大家都在问