WFS—GetFeature方法

前言:WFS服务,可以通过OL进行加载,加载有简单方式也有GetFeature方式,该种方式自由度更大,可以结合一些过滤条件,这样一方面可以提高加载数据的效率,也是业务的一种。来张图效果图:

WFS—GetFeature方法_第1张图片

红色是通过GetFeature加载,轮廓线是简单加载的,北京市的道路也是简单方式加载的。

一、GetFeature方式(核心代码)

        // 创建一个请求
        var featureRequest = new ol.format.WFS().writeGetFeature({
            srsName: 'EPSG:4326',//坐标系
            featureNS: 'http://www.opengeospatial.net/cite',// 注意这个值必须为创建工作区时的命名空间URI
            featurePrefix: 'cite',//工作区的名称
            featureTypes: ['bou2_4p '],//所要访问的图层
            maxFeatures:5000,
            outputFormat: 'application/json',
            filter: ol.format.filter.equalTo('name', '河北省')
        });

        // 发送请求
        fetch('http://localhost:8080/geoserver/wfs', {
            method: 'POST',
            body: new XMLSerializer().serializeToString(featureRequest)
        }).then(function (response) {
            return response.json();
        }).then(function (json) {
            var features = new ol.format.GeoJSON().readFeatures(json);
            vectorSource.addFeatures(features);
        });

这里面有三个参数是必须的:featureNS、featurePrefix、featureTypes。这三个参数必须赋值否则错误。

二、完整demo




    GetFeatures
    
    


    
    

 

转载于:https://www.cnblogs.com/tuboshu/p/10752298.html

你可能感兴趣的:(WFS—GetFeature方法)