noob:node.js writeHead停止我的代码

时间:2013-07-28 01:45:45

标签: javascript node.js

好的,我是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命令,它可以正常工作。

为什么?

1 个答案:

答案 0 :(得分:3)

这是因为您在.writeHead()之后尝试.write()

response.write('End of the callback');

response.writeHead(200);

.writeHead()必须是第一个:

response.writeHead(200);
response.write('End of the callback\n');