You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Jul 6, 2018. It is now read-only.
Repository navigation
This repository was archived by the owner on Jul 6, 2018. It is now read-only.
To me it looks getting the path and/or headers is broken:
internal/http2/compat.js:253
return headers.get(constants.HTTP2_HEADER_PATH);
^
TypeError: Cannot read property 'get' of undefined
at Http2ServerRequest.get path [as path] (internal/http2/compat.js:253:19)
at Http2Server.http2.createServer (/Users/robert/projects/http2/test/parallel/test-http2-set-cookies.js:31:18)
at emitTwo (events.js:125:13)
at Http2Server.emit (events.js:213:7)
at Http2Server.onServerStream (internal/http2/compat.js:501:10)
at emitThree (events.js:135:13)
at Http2Server.emit (events.js:216:7)
at Http2Session.sessionOnStream (internal/http2/core.js:1035:10)
at emitThree (events.js:135:13)
at Http2Session.emit (events.js:216:7)
still haven't found out if the client doesn't send a path in general or if the issue is on the server side
depends on #75 -- without #75 a request crashes with:
internal/http2/compat.js:282
this[kHeaders] = linkedList.create();
^
TypeError: linkedList.create is not a function
at new Http2ServerResponse (internal/http2/compat.js:282:33)
at Http2Server.onServerStream (internal/http2/compat.js:456:5)
at emitThree (events.js:135:13)
at Http2Server.emit (events.js:216:7)
at Http2Session.sessionOnStream (internal/http2/core.js:1035:10)
at emitThree (events.js:135:13)
at Http2Session.emit (events.js:216:7)
at Http2Session.onSessionHeaders [as onheaders] (internal/http2/core.js:104:11)
Ah yes, this is caused by a recent change in the linked list api over in master. Some of the functions were removed and this part of the code hadn't been updated yet to reflect those changes. We have a PR here that should fix it: #75
internal/http2/compat.js:251
return headers.get(constants.HTTP2_HEADER_PATH);
^
TypeError: Cannot read property 'get' of undefined
at Http2ServerRequest.get path [as path] (internal/http2/compat.js:251:19)
at Http2Server.http2.createServer (/Users/robert/projects/http2/test/parallel/test-http2-date-header.js:34:18)
at emitTwo (events.js:125:13)
at Http2Server.emit (events.js:213:7)
at Http2Server.onServerStream (internal/http2/compat.js:497:10)
at emitThree (events.js:135:13)
at Http2Server.emit (events.js:216:7)
at Http2Session.sessionOnStream (internal/http2/core.js:1042:10)
at emitThree (events.js:135:13)
at Http2Session.emit (events.js:216:7)
the same applies for req.getHeader('date'), I described it in #94
@sebdeckers with #47req.headers and req.path works, but req.getHeader('date') throws:
/Users/robert/projects/http2/test/parallel/test-http2-date-header.js:37
console.log("--->", req.getHeader('date'))
^
TypeError: req.getHeader is not a function
at Http2Server.http2.createServer (/Users/robert/projects/http2/test/parallel/test-http2-date-header.js:37:27)
at emitTwo (events.js:125:13)
at Http2Server.emit (events.js:213:7)
at Http2Server.onServerStream (internal/http2/compat.js:522:10)
at emitThree (events.js:135:13)
at Http2Server.emit (events.js:216:7)
at Http2Session.sessionOnStream (internal/http2/core.js:1059:10)
at emitThree (events.js:135:13)
at Http2Session.emit (events.js:216:7)
at Http2Session.onSessionHeaders [as onheaders] (internal/http2/core.js:115:11)
Activity
jasnell commentedon May 5, 2017
Ah yes, this is caused by a recent change in the linked list api over in master. Some of the functions were removed and this part of the code hadn't been updated yet to reflect those changes. We have a PR here that should fix it: #75
robertkowalski commentedon May 8, 2017
Sadly not, it still throws:
the same applies for
req.getHeader('date'), I described it in #94sebdeckers commentedon May 9, 2017
@robertkowalski Try #47
robertkowalski commentedon May 9, 2017
@sebdeckers with #47
req.headersandreq.pathworks, butreq.getHeader('date')throws:sebdeckers commentedon May 9, 2017
Oops misread your code. Afaik request does not have a getHeader method. Most of the helper APIs for headers are only on the response object.
robertkowalski commentedon May 10, 2017
thanks for explaining! 👍
btw I tried #47 and it worked (except the missing header method, but that seems to be expected).