📅  最后修改于: 2023-12-03 15:33:09.451000             🧑  作者: Mango
Node.js Http2ServerRequest.authority 方法是用于获取 HTTP/2 请求中的 authority 头部信息的方法。在 HTTP/2 协议中,authority 头部用于指定请求的目标地址(host:port)。该方法返回一个字符串类型的值。
以下是该方法的语法:
const authority = request.authority
其中,request 为 Http2ServerRequest 对象,在 HTTP/2 协议中,该对象代表一个客户端发送的请求。
以下是一个获取 Http2ServerRequest.authority 方法的示例:
const http2 = require('http2');
const fs = require('fs');
const server = http2.createSecureServer({
key: fs.readFileSync('localhost-privkey.pem'),
cert: fs.readFileSync('localhost-cert.pem')
});
server.on('error', (err) => console.error(err));
server.on('stream', (stream, headers) => {
const authority = stream.request.authority;
console.log(`Received request with authority: ${authority}`);
});
server.listen(8443, () => {
console.log('Server listening on https://localhost:8443/');
});
在上述示例中,我们监听了 Http2ServerRequest 对象的 stream 事件,在每次收到请求时,使用 Http2ServerRequest.authority 方法获取请求的 authority 头部信息,并在控制台输出。
在使用 Http2ServerRequest.authority 方法前,建议先检查 request 对象是否为 null 或 undefined。
在 HTTP/2 协议中,authority 头部是必需的,否则服务器将无法分发请求。因此,该方法返回的值应该是有效的。