MST

星途 面试题库

面试题:Node.js中HTTP请求响应基础

在Node.js中,如何使用`http`模块创建一个简单的HTTP服务器,接收请求并返回'Hello, World!'的响应?请写出关键代码片段,并解释`request`和`response`对象的主要作用。
45.4万 热度难度
前端开发Node.js

知识考点

AI 面试

面试题答案

一键面试

以下是使用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对象的主要作用

  1. 获取请求信息:可以通过request对象获取客户端发送的请求相关信息,比如请求方法(request.method,如GETPOST等),这有助于服务器根据不同的请求方法执行不同的逻辑。
  2. 请求头信息request.headers可获取客户端发送的请求头信息,比如User - Agent(用于了解客户端的类型和版本),Content - Type(用于了解请求体的数据格式)等,这些信息对于服务器解析和处理请求很重要。

response对象的主要作用

  1. 设置响应状态:通过response.statusCode设置HTTP响应状态码,如200表示成功,404表示未找到等,告知客户端请求的处理结果。
  2. 设置响应头response.setHeader方法用于设置HTTP响应头,例如设置Content - Type来告知客户端响应数据的类型(如text/plain表示纯文本,application/json表示JSON数据)。
  3. 发送响应数据response.end方法用于结束响应过程,并可以传入要发送给客户端的数据,如上述代码中传入了'Hello, World!'作为响应内容发送给客户端。