不需要用Node.js设置本地服务器

No need to set up a local server with Node.js?

本文关键字:服务器 设置 js Node 不需要      更新时间:2023-09-26

我看到当我想在本地机器上编写Node.js web应用程序时,我不需要使用WAMP或MAMP设置本地服务器。node.js在幕后到底在做什么?我提供这段代码,使一个简单的hello world web应用程序:

var http = require("http");
http.createServer(function(request,response){
    response.writeHead(200, {"content-type":"text/html"});
    response.write("hello world");
    response.end();
}).listen(8080);
console.log("server is running....");

当我在浏览器的URL栏加载"localhost:8080"时,它工作了。

这是如何工作的,为什么我不需要一个本地服务器时,与Node.js工作?

你有一个本地服务器…这是你的Node.js应用程序。

当您调用http.createServer()时,它会创建一个HTTP服务器。当您在该服务器上调用.listen()时,它绑定到请求的端口和可选的请求地址,并侦听连接。当数据从这些连接进入时,它会像其他HTTP服务器一样响应。

HTTP服务器使用你的请求/响应回调,当一个有效的HTTP请求进来时触发它。

因为node自带运行web服务器所需的所有库,所以您正在使用的http库打开8080端口并使用您提供的函数处理请求

这部分:

function(request,response){
    response.writeHead(200, {"content-type":"text/html"});
    response.write("hello world");
    response.end();
}

不,你不需要它。因为node本身可以是你的web服务器,就像你的例子一样。Node是建立在V8,这是chrome JavaScript引擎。

看一个Express js模块,它给了你很多开箱即用的特性