node-http2
node-http2 copied to clipboard
An HTTP/2 client and server implementation for node.js
After a server closes the connection, the connection is marked as closed, but the connection is kept in the endpoint[key] cache. Later requests to send data over that connection fail...
I am using this library to post messages to APNS (Apple push notification server). I can successfully post and get esponses but when there is an ECONNRESET error (probably due...
``` /Users/hurley/src/node-http2/lib/protocol/stream.js:627 throw new Error('Sending illegal frame (' + frame.type + ') in ' + this. ^ Error: Sending illegal frame (DATA) in CLOSED state. at Stream.transition [as _transition] (/Users/hurley/src/node-http2/lib/protocol/stream.js:627:13)...
I'm trying to send POST request to Apple Push Notifications server (APN). I'm getting GOAWAY frame without payload data, through [APN manual](https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/Chapters/APNsProviderAPI.html#//apple_ref/doc/uid/TP40008194-CH101-SW14) states that it must contain a JSON data....
This happens in 3.3.5 (but not 3.3.4) instead of #207: ``` assert.js:90 throw new assert.AssertionError({ ^ AssertionError: false == true at Flow._read (…/node_modules/http2/lib/protocol/flow.js:170:5) at Flow.Readable.read (_stream_readable.js:355:10) at Flow.read (…/node_modules/http2/lib/protocol/flow.js:194:34) at...
Right now, if an error occurs in the endpoint, it is not being handled and as a result the whole process crashes. https://github.com/molnarg/node-http2/blob/master/lib/http.js#L998 Adding an `endpoint.on('error')` handler should fix that.
I wrote simple Express app and got an error. ``` var fs = require('fs'); var express = require('express'); var app = express(); app.get('/', function (req, res) { res.send('hello!') }) var...
How do I close the client when done? `process.exit()` terminates Node, which is undesirable. Thanks a lot! ``` js #!/usr/bin/env node const xtend = require('xtend/mutable') const http2 = require('http2') const...
The Agent classes of `http` and `https` both have a `createConnection()` method which can be used to overwrite socket creation. `http` even supports `createConnection` as an option in `request()`. `http2`...