2016-04-11 14 views
0

Açık hava durumu API'sini kullanıyorum ve rüzgar hızı için undefined değil, diğer ikisi (time ve temp) düzgün çalışıyor.Node JS bir API çağrısı için undefined döndürüyor

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)) 
}) 

cevap

0

Sadece API kontrol ve rüzgar ana nesne altında değil doğrudan ölçümü onu almalı gibi görünüyor:

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

Biçimlendirilmiş API yanıtı:

enter image description here

+0

müthiş ! Teşekkürler – Thesystem32