📅  最后修改于: 2023-12-03 15:03:13.370000             🧑  作者: Mango
Http2ServerRequest.socket 方法返回一个用于与客户端进行通信的 Socket 对象。这个 Socket 对象是一个可读可写的流。
const socket = req.socket;
req
: Http2ServerRequest 对象,表示客户端发来的 HTTP 2 请求。此方法返回一个 Socket 对象,代表与客户端建立的连接。
下面的示例代码展示了如何使用 Http2ServerRequest.socket 方法获取与客户端的连接,并通过这个连接来发送响应。
const http2 = require('http2');
const server = http2.createSecureServer({
key: fs.readFileSync('server.key'),
cert: fs.readFileSync('server.crt')
});
server.on('error', (err) => console.error(err));
server.on('stream', (stream, headers) => {
// 获取客户端的连接对象
const socket = stream.session.socket;
// 发送响应数据
stream.respond({
'content-type': 'text/html',
':status': 200
});
stream.end('<h1>Hello World!</h1>');
// 监听连接断开事件
socket.on('end', () => {
console.log('Connection closed');
});
});
server.listen(8443, () => {
console.log('Server listening on https://localhost:8443/');
});