http2-express-bridge
http2-express-bridge copied to clipboard
Error when requesting with HTTP 2.0 on HTTP 1 port
Module version: 1.0.7 Express version: 4.17.1 Node version: 16.13.0
An error is triggered when sending a raw HTTP/2.0 request with telnet
on HTTP/1.1 port (80)
telnet example.com 80
GET / HTTP/2.0
Host: example.com
Error thrown within Node.js:
/node_modules/http2-express-bridge/lib/bridge.js:53
} = req.httpVersion === '2.0' ? req.stream.session : req; //Checking alpnProtocol for http2
^
TypeError: Cannot read properties of undefined (reading 'session')
at Server.app (/node_modules/http2-express-bridge/lib/bridge.js:53:50)
at Server.emit (node:events:390:28)
at Server.emit (node:domain:475:12)
at parserOnIncoming (node:_http_server:951:12)
at HTTPParser.parserOnHeadersComplete (node:_http_common:128:17)
The error appears to be triggered here: https://github.com/rahulramesha/http2-express-bridge/blob/76b699e4385946b8c6fccacd45eac0577e24b66c/src/bridge.js#L27
How can this error be handled? I feel like I should send back 400
to the client.
any update ?