给萌新的NodeJs技术栈教程(node篇4)--创建简单的 HTTP 服务器,感受node运行过程

45 阅读2分钟

在 Node.js 中,我们可以使用内置的 http 模块创建一个简单的 HTTP 服务器。http 模块提供了创建和操作 HTTP 服务器和客户端的 API。

以下是使用 http 模块创建一个简单 HTTP 服务器的示例:

javascriptCopy codeconst http = require('http');const hostname = '127.0.0.1';const port = 3000;const server = http.createServer((req, res) => {  res.statusCode = 200;  res.setHeader('Content-Type', 'text/plain');  res.end('Hello World\n');});server.listen(port, hostname, () => {  console.log(`Server running at http://${hostname}:${port}/`);});

在这个例子中,我们首先导入了 http 模块。然后,我们使用 http.createServer() 方法创建了一个 HTTP 服务器实例。http.createServer() 方法接受一个回调函数作为参数,该回调函数在每次接收到请求时被调用。

回调函数的参数是 req(请求对象)和 res(响应对象):

  • 请求对象(req):包含了关于客户端请求的信息,如请求方法(GETPOST 等)、请求 URL、请求头等。
  • 响应对象(res):允许我们设置响应状态码、响应头和响应体,以便将信息发送回客户端。

在回调函数中,我们将响应状态码设置为 200(表示成功),并设置了一个名为 'Content-Type' 的响应头,值为 'text/plain'。然后,我们使用 res.end() 方法发送响应体(在这个例子中,是字符串 'Hello World\n')并结束响应。

最后,我们使用 server.listen() 方法启动服务器,使其监听特定的 IP 地址和端口。在这个例子中,我们将 IP 地址设置为 '127.0.0.1',端口设置为 3000。当服务器开始监听时,我们会在控制台输出一条消息。

这就是一个简单的 HTTP 服务器,它在接收到请求时返回 "Hello World"。通过扩展这个示例,您可以根据 req 对象中的信息来定制响应,从而为客户端提供更丰富的功能。