问题标签 [getfeatureinfo]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mapserver - Mapserver 忽略了我的 GetFeatureInfo-requests 模板文件
我希望我的地图文件支持某些图层的 GetFeatureInfo 请求。
我在图层中添加了以下行:
文件本身如下所示(到目前为止仅用于测试目的):
如果我提出 GetFeatureInfo 请求,我会得到以下输出:
所以它达到了一个特征(如果我改变坐标,我会得到不同的特征编号),但我不能从我的模板中得到任何东西。地图服务器尊重我的模板行,因为如果我将其注释掉,GetFeatureInfo 请求将不再起作用:“请求的图层不可查询。”
这里有什么问题?
openlayers - Geoserver GetFeatureInfo WMS 请求在使用 GeoWebCache 层时不起作用
过去几天我一直在尝试从 Geoserver 获取我的地图 GeoWebCache 图层,以便在弹出事件中显示 GetFeatureInfo。当我使用 WMS 图层时,GetFeatureInfo 正在按要求工作。自从我开始使用 GeoWebCache 缓存我的图层后,我就无法 GetFeatureInfo。到目前为止,我认为我应该代理我的 WMS 服务器,但老实说,我真的不知道该怎么做。如果有人知道任何事情或有任何建议,我将非常感激,并感谢您抽出宝贵时间帮助我。
艾尔谢
openlayers - openlayers GetFeatureInfo 请求示例 + 虚拟地球/google
我只是从http://openlayers.org/dev/examples/getfeatureinfo-control.html复制了示例代码。
我使用geoserver运行它,一切都像互联网版本一样正常运行,现在我尝试使用虚拟地球地图更改政治基础层。
由于虚拟地球和谷歌地图的性质,我将球墨卡托设置为 true,但之后高亮功能不再起作用。
我想我发现问题出在哪里,我正在创建的矢量与其余图层之间存在不同的投影,而 openlayers 不知道如何合并它们。有没有办法将我的矢量图层从(我认为)epsg:4326 转换为 epsg:900913(sherical mercator)?
在我的代码下面:
extjs - WMS GetFeatureInfo;多层,不同来源
我正在使用 GeoExt、OpenLayers 开发一个 Web 应用程序,并拥有自己的 GeoServer 来提供各种地图。不过,如果需要,我想让用户添加其他 WMS,以便能够使用所有需要的图层。
因此,我对 GetFeatureInfo 请求的问题。现在我在geoext的地图面板上附加了一个工具栏按钮,
它的控制属性是
我还定义了一个事件侦听器,以便在收到响应后执行我真正想要的操作,但这与此处无关。我的问题如下:
考虑到用户点击了有 2 个以上可见层并且其中至少有一个来自不同来源的点,OpenLayers 将不得不为每个不同来源执行一个 AJAX 请求,并且根据 OpenLayers 自己的文档,
收到 GetFeatureInfo 响应时触发。事件对象有一个带有响应正文的文本属性(字符串),一个带有解析特征数组的特性属性,一个带有触发请求的鼠标单击或悬停事件位置的 xy 属性,以及一个请求属性与请求本身。如果 DrillDown 设置为 true 并且发出了多个请求以从所有层收集要素信息,则文本和请求将仅包含最后一个请求的响应正文和请求对象。
所以,是的,它显然不会马上那样工作。看一下调试器,我可以清楚地看到,从不同的来源给出两个层,它实际上执行了请求,只是它不等待第一个的响应并跳转到下一个(显然,是异步的)。我已经考虑过一个接一个地处理请求,这意味着按照上述方式执行第一个请求,一旦完成并保存响应,就可以进行下一个请求。但我仍然习惯了 GeoExt 使用的数据结构。
我缺少任何 API(无论是 GeoExt 还是 OpenLayers)选项/方法?有什么好的解决方法吗?
谢谢阅读 :-)
PS:对不起,如果我不够清楚,英语不是我的母语。如果上述内容不够清楚,请告诉我:)
sql-server - 具有大量数据的 OpenLayers getFeatureInfo WMS
我正在使用具有超过一百万个对象的 WMS 层。如果我想从这一层获取特征信息,它不起作用,因为 2 分钟后请求被拒绝(超时)。
然后我尝试使用过滤器选项发送请求以获取当前 BBOX 中的对象(现在为 WFS)。结果和以前一样。
我正在使用 Geoserver、数据库 MS SQL 和 OpenLayers webmap JS 库。我认为问题出在 Geoserver 上,因为他无法为包含大量数据的图层提供服务。如果我从对象数量较少的其他图层获取信息,它会起作用。
是否有其他选择来获取数据?
attributes - 从 geoServer getfeatureinfo 中提取单个值
我正在尝试使用 getfeatureinfo 提取单个值。我使用了 GeoServer 给出的确切代码。
现在我想从响应中检索单个值。我尝试解析。更改内容.ftl。但返回的代码仍然是 HTML 格式。当我尝试使用 response.responseXML 时,它返回 Null。如果有人可以提供任何意见,那将很有帮助。它令人沮丧,因为它给人一种直截了当的感觉,但自从过去三天以来,我仍然坚持使用它。
谢谢,阿斯塔
openlayers - 多个过滤层上的 WMSGetFeatureInfo
我正在使用 OpenLayers 开发专题地图,我的问题是我无法获取多个过滤(通过 cql_filter)WMS 图层的信息。
相反,我收到消息“图层和过滤器不匹配,您需要为每个图层提供一个过滤器”
为每一层提供一个过滤器的正确方法是什么?
openlayers - 如何使用 WFS GetFeature 返回 wmsgetfeatureinfo 等数据?
您好,现在我正在Openlayers.Control.getfeature
使用wfs
协议返回属性,当我单击地图中的某个功能时。我知道我可以wmsgetfeatureinfo
用来返回属性,但我的服务器管理员禁止访问它自己的机器,所以我无法访问geoserver
使用代理。
有什么方法可以wfs
getfeature
用来返回属性wmsgetfeatureinfo
吗?
这是来自的回复之一wfs
getfeature
json - 如何使用 OpenLayers 解析 JSONP 响应并返回值?
我正在使用 OpenLayers 和 geoserver 来构建应用程序。对一切都很陌生,这是我的第一个应用程序。现在我正在尝试使用 WMS getFeatureInfo 来获取功能信息并在用户单击功能时显示在弹出窗口中。为了解决跨域问题,我现在正在尝试获取 JSONP 响应。我得到的回应是:
但是我不确定如何解析 JSONP 响应并获取属性值。我正在尝试使用 OpenLayers.Format.JSON.read 方法(不确定这是否是正确的方法)但它返回一个错误,它是一个未定义的构造函数。这是我的代码:
google-maps - 放大时点图层 WMS GetFeatureInfo 失败
我在 GisStackExchange 上发布了这个,但没有运气。
我有一个问题,我认为这与 OpenLayers 和我的谷歌地图基础层之间的交互有关(与坐标系统不一致,或类似的东西)。也许这也可能与我通过 WMS 发送到 GeoServer 的请求有关。但我很困惑。
我的设置:就像我说的,我有一个 olMap,其基础层来自谷歌。这是地图初始化:
当缩放较小时,服务器会向我发送带有功能信息的响应,但是当放大时服务器不再响应。
我试图修复传递缓冲区参数区域以在服务器端创建交叉点。但是即使缩放值过高,我也没有很好的结果:
此外,我正在打印出缩放时不同的 event.xy,但这是有道理的,不是吗?
在 WMSGetFeatureInfo 控件侦听器的 beforegetfeatureinfo 方法中启动警报:
没有缩放,我得到 (1136, 273) 值和 (600, 304) 大缩放大约在相同的地图位置。就像我说的,我对这个问题感到困惑。我花了很多时间在谷歌上搜索它,但我没有找到任何指导方针。
有什么想法吗?