来自Geoserver的GeoJson使用node.js

时间:2012-10-12 15:46:07

标签: node.js geoserver

我是Node.js的新手,通过示例学习。

以下是我要做的事情,我有一个geoserver运行服务GeoJson,我想调用geoserver WFS url并使用node.js获取json数据。这是代码,当我运行它时,我得到:

getaddrinfo ENOENT

var http = require('http');


var options = {
    host: "local:8080/geoserver/wfs?service=WFS&version=1.0.0&request=GetFeature&typeName=layername&outputFormat=JSON&cql_filter=id=1";
    path: '/'
}
var request = http.request(options, function (res) {
    var data = '';
    res.on('data', function (chunk) {
        data += chunk;
    });
    res.on('end', function () {
        console.log(data);

    });
});
request.on('error', function (e) {
    console.log(e.message);
});
request.end();

请指导我正确的方向。谢谢。

2 个答案:

答案 0 :(得分:5)

您需要传递正确的选项:

host - 应该只是主机名

path - 应该是主机上资源的路径(主机名后的所有内容

方法 - 应该是GET或POST(在你的情况下为GET)。

var options = {
    host: "local:8080";
    path: '/geoserver/wfs?service=WFS&version=1.0.0&request=GetFeature&typeName=layername&outputFormat=JSON&cql_filter=id=1',
    method: 'GET'
}

答案 1 :(得分:0)

我也试图通过Node.js获取GeoJSON并采取了不同的方法;我使用了Express和sequelizejs。这使我可以直接从Postgres / PostGIS获取对象。我需要在客户端进行一些格式化,以便从快速响应中形成有效的GeoJSON。