在 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
):包含了关于客户端请求的信息,如请求方法(GET
、POST
等)、请求 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
对象中的信息来定制响应,从而为客户端提供更丰富的功能。