Tag: openstreetmap

Npm下载tarball失败,由于破损的url

我试图安装tileserver-gl在我的Windows机器上托pipe我自己的OSM服务器。 目前,我试图在本地安装,通过npm没有太多的成功。 问题在于,npm无法从特定url获取“mapbox-gl-native”。 我从这个github的问题线程Link Here看到类似的问题。 他们提供了一个备用的下载链接。 我已经尝试从repo下载tileserver-gl文件,手动将所需的文件放在里面,从源代码运行npm install&npm install但无济于事。 有网上主题说,使用节点v4,我已经尝试在节点v6和节点v4。 我该如何解决这个问题?

Nominatim为相同的请求检索不同的数据

我正在使用Nominatim API获取项目的一些本地街道的边界框和多边形点。 我发现的一个问题是,当我在我的Web浏览器上请求URL时,例如: Rua de圣玛丽亚 它检索这个边界框: ["32.6474594","32.64779","-16.8998967","-16.8993021"] ["32.6469257","32.6470059","-16.8981943","-16.8974107"] ["32.6478793","32.6478838","-16.9007069","-16.9005973"] ["32.6478902","32.647988","-16.9014895","-16.9007494"] 但是,当我使用Node.js应用程序的请求使用相同的URL: var request = require('request'); var url = encodeURI("http://nominatim.openstreetmap.org/search?" + "q=Rua de Santa Maria,Madeira&format=json&polygon=1&addressdetails=1"); request({url: url, json: true}, function (err, res, json){ console.log(json); }); 它检索: ["32.6470059","32.647067","-16.8984633","-16.8981943"] ["32.6469257","32.6470059","-16.8981943","-16.8974107"] ["32.6480316","32.6480782","-16.9021559","-16.901742"] ["32.6478793","32.6478838","-16.9007069","-16.9005973"] 这是略有不同。 检索到的多边形点也是不同的。 任何人都知道为什么会发生这种情况

如何从API响应中parsingJPEG并发送到Node.js / Express的前端

我正在使用Google的Street View Image API来获取一个jpeg,然后我想通过Node.js / Express后端的响应体传递给我的前端。 目前,我的getStreetView函数从Google API获得正确的响应。 然后,我将这个response.body (jpeg)传递给我自己的请求处理程序。 但是,当我向该处理程序发出请求时,尽pipe请求已成功,并且包含了我已经分配的包含'Content-Type': 'image/jpeg'标题'Content-Type': 'image/jpeg' ,但图像不显示。 图像数据存在,它只是不显示: 所以要重申 – Postman对API的请求显示图像。 当我的处理程序调用getStreetView ,该请求也正在工作。 但是,它传递给GET /city时,它收到的图像不知何故正在翻译中。 这是一个编码问题? 我只是发送图片url而不是图片本身,但url包含我的API密钥 – 我认为这可能会让我在客户端易受攻击。 任何帮助非常感谢! var getStreetView = function(newLat, newLong, callback) { var api_key = process.env.API_KEY; var url = 'https://maps.googleapis.com/maps/api/streetview?' + 'size=' + 400 + 'x' + 400 + '&location=' + newLat + […]

如何用OSM检索某个GeoLocation的自然特征?

在一个节点的web应用程序中,我需要找出用户位置的自然特征。 我知道用户的经度和纬度,我发现标签自然拥有像水,岩石或草的信息,这些信息足以应用于我的应用。 据我所知,并不是每一个GeoLocation都拥有这种信息。 到目前为止,我的研究让我考虑了OSM-API的Overpass API和XAPI (而我更喜欢用于我的nodejs-project的Xappy.JS,目前似乎正在closures),因为它们的关键目标是提供信息而不是编辑地理信息。 我仍然不确定,如果我能简单地获得自然特征,只提供一个地理位置,或者一个矩形,而不必事先下载周围的地图数据。 我的问题是:你会推荐使用哪个API? 也许你可以给我什么特定的function,我需要寻找的build议。

使用pipe道节点请求阻止交换机api上的504网关超时

我使用以下代码进行OpenStreetMap查询(overpass-API)。 它在较小的查询上正常工作,但在较大的查询上工作正常,大约需要10分钟,它仅生成504网关超时响应。 码: var reqStr = "http://overpass.osm.rambler.ru/cgi/interpreter?data=… console.time("query"); var stream = request(reqStr,{timeout: 3600000}).on('error', function(err) { console.log(err) }).pipe(fs.createWriteStream('resultExport.json')); stream.on('finish', function () { console.timeEnd("query"); }); 响应(resultExport.json): <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>504 Gateway Time-out</title> </head><body> <h1>Gateway Time-out</h1> <p>The gateway did not receive a timely response from the upstream server or application.</p> </body></html> 查询命令有一个[timeout:3600] (秒),请求得到了{timeout:3600000} (毫秒)。 […]