📅  最后修改于: 2023-12-03 15:06:43.892000             🧑  作者: Mango
当开发 Web 应用程序时,有时需要创建一个 HTTP 服务器来处理客户端请求。Node.js 提供了一个内置模块 http
来创建 HTTP 服务器对象,并监听来自客户端的请求。在本文中,我们将学习如何创建一个 HTTP 服务器对象,并在某些特定帖子上监听客户端的请求。
要创建一个 HTTP 服务器对象,我们需要使用 http
模块。以下是 Node.js 中创建 HTTP 服务器对象的基本代码:
const http = require('http');
const server = http.createServer((req, res) => {
// 处理客户端请求逻辑
});
server.listen(3000, () => {
console.log('Server listening on port 3000');
});
http.createServer()
创建并返回一个 HTTP 服务器对象。server.listen()
方法将服务器对象绑定到指定端口上。要监听客户端请求,我们需要在服务器对象上注册一个回调函数。当客户端发送请求时,该回调函数将被调用,并且可以在该回调函数中对请求进行处理。以下是一个简单的回调函数示例:
const server = http.createServer((req, res) => {
if (req.url === '/') {
res.write('Hello, world!');
res.end();
} else if (req.url === '/about') {
res.write('About us page');
res.end();
} else {
res.write('404 Not Found');
res.end();
}
});
req.url
属性来获取客户端请求的 URL,以确定客户端请求的是哪个页面。res.write()
方法向客户端发送一个响应消息。res.end()
方法结束响应消息并将其发送到客户端。以下是一个完整的代码示例,展示了如何创建一个 HTTP 服务器对象,并在两个特定页面上监听客户端请求:
const http = require('http');
const server = http.createServer((req, res) => {
if (req.url === '/') {
res.write('Hello, world!');
res.end();
} else if (req.url === '/about') {
res.write('About us page');
res.end();
} else {
res.write('404 Not Found');
res.end();
}
});
server.listen(3000, () => {
console.log('Server listening on port 3000');
});
我们可以将该代码复制并保存为 server.js
文件,然后在终端运行以下命令:
node server.js
这将启动 HTTP 服务器,并在 http://localhost:3000
地址上监听客户端的请求。