好的,我是Node.js的新手,请原谅noob问题。这是我的简单代码:
var http = require('http');
var fs = require('fs');
// simple node.js server
server = http.createServer(function (request, response){
var get_text = function (errors, contents){
response.write(contents);
response.end('hello world');
}
// get_text is the callback
fs.readFile('log.txt', get_text);
response.write('End of the callback');
response.writeHead(200);
});
server.listen(8000);
console.log('Server running at port 8000');
按照目前的情况,当我在终端中运行脚本时,它会正常启动服务器,但是当我在我的浏览器(chrome)中访问我的localhost:8000时,它会显示为“网页不可用”。
如果我注释掉writeHead命令,它可以正常工作。
为什么?
答案 0 :(得分:3)
这是因为您在.writeHead()
之后尝试.write()
:
response.write('End of the callback');
response.writeHead(200);
.writeHead()
必须是第一个:
response.writeHead(200);
response.write('End of the callback\n');