Javascript 正在尝试JSON.parse文件
我正在下载一个文件并尝试使用JSON.parse,它应该返回Javascript 正在尝试JSON.parse文件,javascript,json,node.js,Javascript,Json,Node.js,我正在下载一个文件并尝试使用JSON.parse,它应该返回{dateTime:“2012-04-07T17:15:00.000-05:00”,value:“1065.91”}我是否通过JSON.parse传递了正确的对象并正确地构造了它 代码: var http=require(“http”); var fs=需要('fs'); 变量选项={ 主持人:“waterdata.usgs.gov”, 港口:80, 路径:'/nwis/iv/?sites=02334400&period=P7D&for
{dateTime:“2012-04-07T17:15:00.000-05:00”,value:“1065.91”}
我是否通过JSON.parse传递了正确的对象并正确地构造了它
代码:
var http=require(“http”);
var fs=需要('fs');
变量选项={
主持人:“waterdata.usgs.gov”,
港口:80,
路径:'/nwis/iv/?sites=02334400&period=P7D&format=json'
};
get(选项、函数(res){
var responseText='';
res.on('data',函数(块){
responseText+=块;
});
res.on('end',function(){
fs.writeFile('response.txt',responseText.toString(),函数(err){
如果(错误)抛出错误;
log('已保存!');
var d=JSON.parse(responseText);
对于(var i=0;i
只需将waterdata.usgs.gov
替换为waterservices.usgs.gov
您请求的页面是HTML。您无法将HTML解析为JSON.Oops,因为发布的路径错误。编辑。
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);
});