var https = require('https');
var fs = require('fs');
var options = {
key: fs.readFileSync('test/fixtures/keys/agent2-key.pem'),
cert: fs.readFileSync('test/fixtures/keys/agent2-cert.pem')
};
https.createServer(options, function (req, res) {
res.writeHead(200);
res.end("hello world\n");
}).listen(8000);
- 谁能解释一下为什么我们调用
writeHead
和end
createServer 方法中的方法。 - createServer中传入options对象的主要用途是什么 方法。
最佳答案
那些对 writeHead
和 end
的调用不是在 createServer
方法中完成的,而是在回调中完成的。
如果将回调拆分为单独的函数,则更容易查看:
function handleRequest(req, res) {
res.writeHead(200);
res.end("hello world\n");
}
https.createServer(options, handleRequest).listen(8000);
所以在这里我们定义了一个 handleRequest
函数,然后将它传递给 createServer
调用。现在,每当我们创建的 node.js 服务器收到传入请求时,它都会调用我们的 handleRequest
方法。
这种模式在 JavaScript 中很常见,是 node.js 异步事件处理的核心。
关于node.js - NodeJs 中的 response.writeHead 和 response.end,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14243100/