面试题答案
一键面试以下是使用http
模块在Node.js中创建简单HTTP服务器,接收请求并返回'Hello, World!'响应的关键代码片段:
const http = require('http');
const server = http.createServer((request, response) => {
response.statusCode = 200;
response.setHeader('Content-Type', 'text/plain');
response.end('Hello, World!');
});
const port = 3000;
server.listen(port, () => {
console.log(`Server running at http://localhost:${port}/`);
});
request
对象的主要作用
- 获取请求信息:可以通过
request
对象获取客户端发送的请求相关信息,比如请求方法(request.method
,如GET
、POST
等),这有助于服务器根据不同的请求方法执行不同的逻辑。 - 请求头信息:
request.headers
可获取客户端发送的请求头信息,比如User - Agent
(用于了解客户端的类型和版本),Content - Type
(用于了解请求体的数据格式)等,这些信息对于服务器解析和处理请求很重要。
response
对象的主要作用
- 设置响应状态:通过
response.statusCode
设置HTTP响应状态码,如200
表示成功,404
表示未找到等,告知客户端请求的处理结果。 - 设置响应头:
response.setHeader
方法用于设置HTTP响应头,例如设置Content - Type
来告知客户端响应数据的类型(如text/plain
表示纯文本,application/json
表示JSON数据)。 - 发送响应数据:
response.end
方法用于结束响应过程,并可以传入要发送给客户端的数据,如上述代码中传入了'Hello, World!'作为响应内容发送给客户端。