http.createServer()vs http.request()

时间:2015-08-05 02:14:08

标签: javascript node.js http server

我想我理解以下代码:

var assert =require("assert");
var http = require("http");

var server = http.createServer(function(req, res){
    res.writeHead(200, {"Content-Type" : "text/HTML"});
    res.write("hello, world.\r\n");
    res.end();
});
server.listen(8000, function(){
    console.log("Listening on port 8000");
});

我们创建一个服务器并将其设置为在端口8000上侦听,当我在浏览器中转到localhost:8000页面时,我认为它向服务器发起请求(有人可以帮我指定那个)然后服务器响应标题和“hello world”

下一部分我不太确定:

var req = http.request({
    port : 8000
}, function(res){
    console.log("HTTP header:", res.headers);
    res.on("data", function(data){
        console.log("Body:", data.toString());
        assert.equal("hello, world.\r\n", data.toString());
        assert.equal(200, res.statusCode);
        // server.unref(); //client disconnected...sever stop listening
    })
})
 req.end()

^^^此服务器是否向浏览器发送请求 我知道医生说

  

Node为每个服务器维护多个连接以发出HTTP请求。此功能允许用户透明地发出请求。

这是否意味着服务器正在发送请求。你可以随机向客户发送请求吗?如果是这样,它如何获取数据?是否必须从浏览器/客户端进行某种类型的启动才能发送数据 res.on(“data”)如何获取数据?

0 个答案:

没有答案