Node.js response.writeHead() 方法

2025年2月26日 | 4 分钟阅读

在本文中,我们将讨论 Node.js 中的 response.writeHead() 方法,包括其语法、应用和示例。

Node.js response.writeHead() 方法是什么?

response.writeHead() 方法用于将响应头发送到请求。此方法可用于导入 http 模块。此方法用于设置响应中的状态码和其他头部。它主要用于创建 Http 服务器以控制客户端和处理响应。

语法

Node.js 中 response.writeHead() 方法的简单语法。

参数

  • statusCode 代表要发送的 HTTP 状态码。
  • statusMessage 代表一个人类可读的状态消息。
  • headers 代表一个包含响应头的对象。

response.writeHead() 方法中的头部

一些常用的头部如下:

Content-Type

它用于指定响应内容的媒体类型。这里是“application/json”,这是处理响应体的方式。这些 json 响应将被解析为 JSON 对象。

Cache-Control

这用于控制浏览器缓存,并确保在未验证的情况下不存储或重用内容。它保证了内容的准确性。

Strict-Transport-Security

它使用 HTTPS 来保护连接。max-age 指定了连接应保持安全的时间,从而避免了中间人攻击。

地点

它用于重定向响应。它有一个客户端应导航到的 URL。

Access-Control-Allow-Origin

这些头部指定了允许访问资源的来源。 '*' 允许任何来源访问该资源。

Node.js 中 response.writeHead() 方法的应用

Node.js 中 response.writeHead() 方法的一些应用如下:

设置状态码

  • 当响应成功时,它会发送 200 OK 状态码。
  • 当找不到请求响应时,它会发送 404 Not Found 状态码。
  • 如果发生任何内部服务器错误,它会发送 500 Internal Server Errors。

设置头部

  • 它用于指定“content-Type”。通常,“text/html”用于 html 页面,“application/json”用于 json 数据。
  • “Content-Encoding” 头部用于压缩数据,并且可以使用 writeHead() 方法进行设置。它会将编码转换为响应。
  • 此方法用于设置 “Cache-Control” 方法,以控制浏览器如何缓存响应。
  • 它用于通过使用 “Set-Cookie” 头部发送 cookie。

跨域资源共享

  • 此方法指定了可以访问该资源的来源。它还可以限制跨不同域的资源共享。

安全头部

  • “Strict-Transport-Security” 强制服务器建立安全连接。
  • “Content-Security-Policy” 用于控制客户端可以加载的资源。

示例

让我们来看一个简单的程序来说明 Node.js 中 response.writeHead() 函数的用法。

Server.js

Index.html

输出

Node.js response.writeHead() Method

Interface

Node.js response.writeHead() Method

说明

此应用程序包含两个文件。一个是 index.html,其中包含有关头部和主体部分的一些信息。主体部分使用内部 CSS 进行样式设置。另一个文件是 server.js,用于显示 html 文件。在 server.js 文件中,设置了一个 http 服务器,该服务器需要 'http'、'fs' 和 'path' 方法,并使用 'http.createServer' 来监听传入的请求并提供响应。它将处理请求。如果 URL 是 'index.html' 或 '/',它将构造文件路径并设置内容类型为 'text/html',然后使用 fs。readline() 方法用于读取 html 文件,在成功读取后,它会发送成功的响应。如果发生任何错误,它会发送 404 状态码。

这里使用 response.writeHead() 方法来设置头部、发送状态码和处理错误。