2012-04-10 10 views
0

Ich lade eine Datei und versuchen, JSON.parse zu verwenden, die { dateTime: "2012-04-07T17:15:00.000-05:00", value: "1065.91" } zurückgeben sollte Übergeben ich das richtige Objekt durch JSON.parse und strukturiere es richtig?Versuch, JSON.parse eine Datei

Code:

var http = require("http"); 
var fs = require('fs'); 

var options = { 
host: 'waterdata.usgs.gov', 
port: 80, 
path: '/nwis/iv/?sites=02334400&period=P7D&format=json' 
}; 

http.get(options, function(res) { 
var responseText = ''; 
res.on('data', function(chunk) { 
    responseText += chunk; 
}); 
res.on('end', function() { 
    fs.writeFile('response.txt', responseText.toString(), function(err) { 
     if (err) throw err; 
     console.log('It\'s saved!'); 
     var d = JSON.parse(responseText); 
     for (var i = 0; i < d.value.timeSeries.length; i++) { 
      if (d.value.timeSeries[i].variable.variableName == 'Elevation of reservoir  water surface above datum, ft') { 
       var result = d.value.timeSeries[i].values[0].value[d.value.timeSeries[i].values[0].value.length - 1]; 
       console.log(result); 
      } 
     } 
    }); 
}); 
}).on('error', function(e) { 
console.log('problem with request: ' + e.message); 
}); 
+1

Die angeforderten Seite ist HTML. Sie können HTML nicht als JSON analysieren. –

+0

Hoppla, hat den falschen PFAD gepostet. Bearbeitet. – mnort9

Antwort

1

Ersetzen Sie einfach waterdata.usgs.gov mit waterservices.usgs.gov

Verwandte Themen