这是我的代码:
var http = require('http')
http.createServer(function (req, res) {
res.writeHead(200, {
"Content-Type": "json"
});
fs.readdir('.', function (error, files) {
if (error)
res.end(util.format(error))
files.forEach(function (file) {
fs.stat(file, function (erro, stats) {
console.log(JSON.stringify(stats))
res.write(JSON.stringify(stats))
})
})
})
}).listen(3000);
console.log("server is running!")
当我访问http://127.0.0.1:3000/
时,没有输出,但控制台输出是:
{"dev":0,"mode":16822,"nlink":1,"uid":0,"gid":0,"rdev":0,"ino":0,"size":0,"atime":"2014-11-20T13:36:19.000Z","mtime":"2014-11-20T13:36:19.000Z","ctime":"2014-11-20T13:31:53.000Z"}
{"dev":0,"mode":33206,"nlink":1,"uid":0,"gid":0,"rdev":0,"ino":0,"size":11,"atime":"2014-11-20T13:56:21.000Z","mtime":"2014-11-20T13:56:21.000Z","ctime":"2014-11-20T13:56:21.000Z"}
{"dev":0,"mode":33206,"nlink":1,"uid":0,"gid":0,"rdev":0,"ino":0,"size":844,"atime":"2014-11-20T14:24:04.000Z","mtime":"2014-11-20T14:24:04.000Z","ctime":"2014-11-20T13:32:19.000Z"}
{"dev":0,"mode":16822,"nlink":1,"uid":0,"gid":0,"rdev":0,"ino":0,"size":0,"atime":"2014-11-20T14:03:56.000Z","mtime":"2014-11-20T14:03:56.000Z","ctime":"2014-11-20T13:56:21.000Z"}
答案 0 :(得分:2)
完成res.end()
来电后,您需要致电res.write
。
http.createServer(function (req, res) {
res.writeHead(200, {
"Content-Type": "json"
});
fs.readdir('.', function (error, files) {
if (error)
res.end(util.format(error))
var filesLeft = files.length;
files.forEach(function (file) {
fs.stat(file, function (erro, stats) {
console.log(JSON.stringify(stats))
res.write(JSON.stringify(stats))
// Keep track of how many files' fs.stat calls are left
if (--filesLeft === 0) {
res.end();
}
})
})
})
}).listen(3000);