准备步骤请参考:http://www.jianshu.com/p/dbc4dd2f38e9
在服务器端的操作:
app.post("/scanMap",function(req,res){
var postdata='';
var featureArr=[];
req.addListener('data',function(data){
postdata+=data;
})
req.addListener('end',function() {
var query = qs.parse(postdata);
var sql = query.sql;
var gdal=require('gdal');
oracle.ExcuteSQL(gisJson,sql,function(result){
var path=prjectPath+result.rows[0][0];
//r只读 r+读取修改增加 w可写
var dataset = gdal.open(path,'r');
//获取数据集中第一个图层
var layer = dataset.layers.get(0);
layer.features.forEach(function(feature, i) {
featureArr.push(feature.getGeometry().toJSON());
});
res.send(featureArr);
})
})
});
返回的是GeoJson字符串数组;
回到网页,接收到数组后进行操作,这之间需要一个类 GeoJsonConverter.js
加到地图上的具体操作可以看类的出处
在此感谢上述两位博主!!!