📜  Node.js Http2ServerRequest.rawHeaders 方法(1)

📅  最后修改于: 2023-12-03 15:17:54.801000             🧑  作者: Mango

Node.js Http2ServerRequest.rawHeaders 方法

简介

rawHeaders 方法是 Node.js Http2 模块中 Http2ServerRequest 对象的一个属性,用于获取 HTTP 2.0 请求的原始标头(header)数组。它返回一个包含请求标头的数组,每个标头都是一个键值对。

语法
request.rawHeaders
返回值

返回一个数组,其中包含请求的原始标头。

示例
const http2 = require('http2');

const server = http2.createServer();

server.on('request', (request, response) => {
  const headers = request.rawHeaders;

  console.log('原始标头:');
  console.log(headers);
});

server.listen(3000);
返回内容格式
- Accept-Encoding
- User-Agent
- Host
- Connection
- ...
注意事项
  • rawHeaders 返回的是一个数组,其中每个标头都是交替出现的键和值。例如,第一个元素是第一个标头的键,第二个元素是第一个标头的值,如此类推。请注意,它不会对标头键或值进行任何处理,包括去掉空格等。

  • 如果标头具有多个值(即多个相同的键),则每个值都被视为单独的标头。

  • rawHeaders 是只读属性,无法修改请求的原始标头。

  • 在 HTTP1.1 中,标头是不区分大小写的,而在 HTTP2 中是区分大小写的。因此,对于相同名称但大小写不同的标头,它们在 rawHeaders 数组中将被视为不同的标头。

  • 为了方便地获取单个标头的值,可以使用 Http2ServerRequest.headers 对象。例如,要获取 Content-Type 标头的值,可以使用 request.headers['content-type']

参考链接