response.socket
- 类型: <net.Socket> | <tls.TLSSocket>
返回一个 Proxy 对象,该对象表现得像一个 net.Socket(或 tls.TLSSocket),但会根据 HTTP/2 逻辑应用 getter、setter 和方法。
【Returns a Proxy object that acts as a net.Socket (or tls.TLSSocket) but
applies getters, setters, and methods based on HTTP/2 logic.】
destroyed、readable 和 writable 属性将从 response.stream 中获取并设置。
destroy、emit、end、on 和 once 方法将被调用在 response.stream 上。
setTimeout 方法将会在 response.stream.session 上被调用。
pause、read、resume 和 write 会抛出错误,错误代码为 ERR_HTTP2_NO_SOCKET_MANIPULATION。更多信息请参见 Http2Session 和套接字。
所有其他交互将直接路由到套接字。
【All other interactions will be routed directly to the socket.】
import { createServer } from 'node:http2';
const server = createServer((req, res) => {
const ip = req.socket.remoteAddress;
const port = req.socket.remotePort;
res.end(`Your IP address is ${ip} and your source port is ${port}.`);
}).listen(3000);const http2 = require('node:http2');
const server = http2.createServer((req, res) => {
const ip = req.socket.remoteAddress;
const port = req.socket.remotePort;
res.end(`Your IP address is ${ip} and your source port is ${port}.`);
}).listen(3000);