WFS发布者参数

WFS发布者参数是由实现定义的非标准请求参数,用于提供增强的功能。geoserver支持各种特定于供应商的WFS参数。

一般供应商选项

这些供应商选项可用于所有操作。

内容--处置

这个 content-disposition 参数指示Web浏览器如何处理返回的内容。语法为::

content-disposition=<disposition>

哪里 content-disposition =attachment 指示浏览器将内容保存到磁盘。

哪里 content-disposition=inline 要求浏览器显示内容。注意:当被要求显示非常大的内容时,这可能会带来性能问题。

文件名

这个 filename 参数提供浏览器保存文件(例如保存到下载文件夹)时建议的文件名。语法为::

filename=<file>

文件名使用的一个示例是::

filename=features.json

将服务输出另存为文件时,供应商选项 filename 用于提供所用的文件名。

XML请求验证

当涉及到XML请求的有效性时,geoserver没有WFS规范那么严格。要强制传入的XML请求有效,请使用以下参数:

strict=[true|false]

此参数的默认选项是 false .

例如,以下请求无效:

<wfs:GetFeature service="WFS" version="1.0.0"
 xmlns:wfs="http://www.opengis.net/wfs">
  <Query typeName="topp:states"/>
</wfs:GetFeature>

请求无效有两个原因:

  • 这个 Query 元素的前缀应为 wfs: .

  • 命名空间前缀尚未映射到命名空间URI。

也就是说,请求仍将在默认情况下处理。使用执行上述命令 strict=true 但是,参数会导致错误。正确的语法应该是:

<wfs:GetFeature service="WFS" version="1.0.0"
 xmlns:wfs="http://www.opengis.net/wfs"
 xmlns:topp="http://www.openplans.org/topp">
  <wfs:Query typeName="topp:states"/>
</wfs:GetFeature>

获取能力请求

命名空间过滤器

WFS GetCapabilities 通过添加 <namespace> 请求的参数。

备注

此参数仅影响getCapabilities请求。

要应用此筛选器,请向请求添加以下代码:

namespace=<namespace>

尽管提供无效的命名空间不会导致任何错误,但返回的getCapabilities文档将不包含任何层信息。

警告

使用此参数可能会导致getCapabilities文档无效,因为WFS规范要求文档至少返回一层。

备注

此筛选器与 虚拟服务 .

GetFeature请求

CQL过滤器

在WFS中 GetFeature 获取请求, cql_filter 参数可用于指定ECQL(扩展公共查询语言)格式的筛选器。与OGC XML过滤器相比,ECQL提供了一种更紧凑和可读的语法。

有关详细信息,请参阅 ECQL参考cql和ecql 辅导的。

以下示例说明了一个GET REQUEST OGC筛选器:

filter=%3CFilter%20xmlns:gml=%22http://www.opengis.net/gml%22%3E%3CIntersects%3E%3CPropertyName%3Ethe_geom%3C/PropertyName%3E%3Cgml:Point%20srsName=%224326%22%3E%3Cgml:coordinates%3E-74.817265,40.5296504%3C/gml:coordinates%3E%3C/gml:Point%3E%3C/Intersects%3E%3C/Filter%3E

使用ecql,相同的过滤器定义如下:

cql_filter=INTERSECTS(the_geom,%20POINT%20(-74.817265%2040.5296504))

格式选项

这个 format_options 参数是特定于格式的其他参数的容器。语法是::

format_options=param1:value1;param2:value2;...

支持的格式选项是:

  • callback (默认为 parseResponse )-指定JSONP响应格式的回调函数名

  • id_policy (默认为 true )-指定JSON输出格式的ID生成。要在输出中包括要素ID,请使用属性名称或使用 format_options=id_policy:true 用于特征ID生成。要完全避免使用功能ID,请使用 format_options=id_policy:false

  • filename (默认为 features 或从要素类型名称生成)-提供 Content-Disposition 指示附件文件名的标头(浏览器使用将内容保存到磁盘时建议使用 Save-As )。例如 format_options=filename:content.txt

  • csvseparator (默认为 `, `)-指定可在输出CSV文件中使用的分隔符

再投射

由于WFS 1.1.0和2.0.0都支持数据重投影,geoserver可以将数据存储在一个投影中,并在另一个投影中返回gml。虽然不是规范的一部分,但geoserver也支持使用WFS 1.0.0。提交WFS时 GetFeature 获取请求,可以添加此参数来指定重投影SRS,如下所示:

srsName=<srsName>

投影代码表示为 <srsName> ,例如 EPSG:4326 .对于POST请求,可以将相同的代码添加到 Query 元素。