检查带有 WMS 的 CQL_FILTER 是不是返回至少一项功能

Posted

技术标签:

【中文标题】检查带有 WMS 的 CQL_FILTER 是不是返回至少一项功能【英文标题】:Check if CQL_FILTER with WMS returns at least one feature检查带有 WMS 的 CQL_FILTER 是否返回至少一项功能 【发布时间】:2020-10-02 19:08:09 【问题描述】:

我正在使用带有 ArcGIS JS API 的 WMS CQL_FILTER 选项。该功能工作正常,但我想知道是否有一种方法可以测试 CQL_FILTER 的表达式是否会返回至少一个功能。 这可能吗?我知道 CQL_FILTER 会根据表达式进行过滤,但它会返回任何内容吗?

感谢您的帮助! 朱利安

【问题讨论】:

【参考方案1】:

我认为使用 WMS 无法实现,因为结果是图像,即地图。

如果提供商也提供 WFS,您可以通过一个确定的过滤器进行简单查询以获取要素数量。

这样的东西可以完成这项工作,

http://your/server/wfs?request=getfeature&version=1.1&service=wfs&typename=the_namespace:the_featuretype&CQL_FILTER=the_filter&resultType=hits

你应该得到这样的结果,

<?xml version="1.0" encoding="UTF-8"?>
<wfs:FeatureCollection numberOfFeatures="X" ... />

显然,你想要的是numberOfFeatures

【讨论】:

您好,谢谢,我实际上让它与 OGC 功能 API 一起使用,因为 ArcGIS JS API 不支持 WFS。还是谢谢!

以上是关于检查带有 WMS 的 CQL_FILTER 是不是返回至少一项功能的主要内容,如果未能解决你的问题,请参考以下文章

geoserver配置SQL图层 cql_filter模糊查询

geoserver配置SQL图层 cql_filter模糊查询

QGIS 是不是支持 WMS-T(WMS with time)?

GeoServer WMS 崩溃

我无法使 CQL 参数 IN 工作

如何使用 Apache 和 Tomcat 为 Geoserver WMS 设置子域