leaflet結合geoserver利用WFS服務實現圖層刪除功能(附源碼下載)

前言

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

內容概覽

leaflet結合geoserver利用WFS服務實現圖層刪除
源代碼demo下載ajax

效果圖以下:
json

本篇主要是在上一篇leaflet結合geoserver利用WFS服務實現圖層新增功能(附源碼下載)基礎上實現的,leaflet經過調用geoserver發佈的地圖服務WFS來達到圖層刪除記錄的目的。與GeoServer的WFS進行基於Rest交互關鍵就在於請求參數,值得注意的是這些請求最好採用POST方法發送。查詢能夠採用json,但增長,刪除,修改都只能採用XML形式Transactionapi

  • 部分核心代碼,完整的見源碼demo下載
var geoserverUrl = 'http://localhost:8080/geoserver/WebGIS';
/*圖層刪除記錄
*@method deleteLayerRecord
*@param fid 記錄fid值
*@return callback
*/
function deleteLayerRecord(fid, callback){
var xml = '<Transaction xmlns="http://www.opengis.net/wfs" service="WFS" version="1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-basic.xsd">';
xml += '<Delete typeName="WebGIS:testLayer">';
xml += '<Filter xmlns="http://www.opengis.net/ogc">';
xml += '<FeatureId fid="' + fid + '"/>';
xml += '</Filter>';
xml += '</Delete>';
xml += '</Transaction>';
$.ajax({
url: geoserverUrl+'/wfs',
async: true,
data:xml,
type:'Post',
contentType: 'text/xml',
success(result) {
callback(result);
},
error(err) {
console.log(err);
}
})
}
……

完整demo源碼見小專欄文章尾部小專欄async

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

相關文章
相關標籤/搜索