var fs = require('fs');
var file = __dirname + '/data.json';
var http = require ('http');
var server = http.createServer(function (req, res){
res.writeHead(200);
fs.readFile(file, 'utf8', function (err, data) {
if (err) {
console.log('Error: ' + err);
return;
}
data = JSON.parse(data);
res.end(data);
});
});
server.listen(8000);
当我做:
data = JSON.parse(data);
console.dir(data);
而不是
data = JSON.parse(data);
res.end(data);
它能够显示数据我在控制台上有.json文件。但是,当我尝试创建一个服务器并使用res.end发布数据时,它实际上并不工作。
有人可以提供一些见解吗?是否因为我这里的“数据”只是一个对象?我应该如何处理我从.json获得的数据以便用于我的html?
+0
它已经是磁盘上的JSON。无需解析。 res.end需要一个缓冲区或一个字符串,而不是一个对象。 –