leaflet 結合 geoserver 實現地圖屬性查詢(附源碼下載)

前言

leaflet 入門開發系列環境知識點了解:html

內容概覽

leaflet 結合 geoserver 實現地圖屬性查詢
源代碼 demo 下載json

效果圖以下:

api

本篇主要是 leaflet 經過調用 geoserver 發佈的地圖服務 WFS,來達到地圖屬性查詢的目的。具體是構造rest服務 url 參數形式來請求 WFS 服務,獲取到地圖數據源,而後利用 leaflet 來疊加顯示在地圖上展現。app

  • 地圖屬性查詢函數
var geoserverUrl = 'http://localhost:8080/geoserver/ZKYGIS';
/*屬性查詢圖層
*@method queryByProperty
*@param propertyValue 屬性值
*@param propertyName 屬性名稱
*@param typeName 圖層名稱
*@return null
*/
function queryByProperty(propertyValue, propertyName, typeName, callback){
var filter =
'<Filter xmlns="http://www.opengis.net/ogc" xmlns:gml="http://www.opengis.net/gml">';
filter += '<PropertyIsLike wildCard="*" singleChar="#" escapeChar="!">';
filter += '<PropertyName>' + propertyName + '</PropertyName>';
filter += '<Literal>*'+propertyValue+'*</Literal>';
filter += '</PropertyIsLike>';
filter += '</Filter>';
var urlString = geoserverUrl + '/ows';
var param = {
service: 'WFS',
version: '1.0.0',
request: 'GetFeature',
typeName: typeName,
outputFormat: 'application/json',
filter: filter
};
var geojsonUrl = urlString + L.Util.getParamString(param, urlString);
……

完整demo源碼見小專欄文章尾部GIS之家leaflet小專欄函數

文章尾部提供源代碼下載,對本專欄感興趣的話,能夠關注一波url

相關文章
相關標籤/搜索