📜  Node.js http2stream.priority() 方法(1)

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

Node.js http2stream.priority() 方法

简介

http2stream.priority() 方法用于更新HTTP/2 流的优先级。HTTP/2 是基于二进制帧构建的,每个帧都会被发送到某个流上。更新流的优先级意味着调整流的优先级排名以影响需要优先处理的帧。

语法

stream.priority(priorityOptions)

参数:

  • priorityOptions : 一个对象,包含以下选项:
    • exclusive:表示该流是否属于"父流"。默认为false。
    • parent:代表流所属的父流的ID。默认为0。
    • weight: 表示相对于同级的其他流的相对优先级。默认为16。
    • dependency:表示当前流所依赖的流的ID号。

返回值:void

示例

以下示例演示如何将流的优先级修改为较高的优先级:

const http2 = require('http2');
const server = http2.createServer();

server.on('stream', (stream, headers) => {
  stream.respond({ ':status': 200 });
  stream.end('Hello World');
  // 将当前流的优先级更改为比其他流更高
  stream.priority({
    parent: 0,
    exclusive: false,
    weight: 10,
    dependency: 0
  });
});

server.listen(8080);
注意事项
  • priorityOptions 对象中的 dependency 参数是必填项。
  • 流的优先级可以在任何时间被修改,包括在流激活之前和之后。
  • 建议将相对权重权重值设置在1至256之间,其中16代表“标准”优先级。
参考资料