2016-04-11 6 views
0

Ich benutze die Open-Wetter-API und für die Windgeschwindigkeit ist es undefined zurück, aber die anderen beiden (Zeit und Temp) funktionieren gut.Knoten JS Rückgabe undefined für einen API-Aufruf

var request = require('request'); 
var yargs = require('yargs'); 
var fs = require ('fs'); 
var forecasts = require('./forecast.json'); 
var args = yargs.argv; 

var url = 'http://api.openweathermap.org/data/2.5/forecast?q=erie,pa&APPID=a0472e6063198c88952f86f836355ae1&units=imperial'; 

request({url: url, json: true},function(error,response,body){ 
var time = 0; 
body.list.forEach(function(measurement){ 
    var forecast = {Wind_Speed: measurement.main.wind, time: time, temp: measurement.main.temp}; 

    forecasts.push(forecast); 
    time = time + 3 

    console.log(forecast) 
}) 
fs.writeFile('forecast.json',JSON.stringify(forecasts)) 
}) 

Antwort

0

Ich habe gerade überprüft das API und es sieht aus wie Wind nicht unter Hauptsache ist, sollten Sie es von der Messung nehmen direkt:

var forecast = { 
    Wind_Speed: measurement.wind.speed, 
    time: time, 
    temp: measurement.main.temp 
}; 

Formatiert API-Antwort:

enter image description here

+0

ehrfürchtige ! Vielen Dank – Thesystem32