Closed
Description
Currently, compression
does not work with http2. I guess, when using http2, doing chunked transfer-enconding is not necessary, so I'm not sure if http2 support is in the scope of this project.
The following code tries to use http2
with compression
and throws a TypeError: this._implicitHeader is not a function
.
// tested with:
// "dependencies": {
// "compression": "^1.6.1",
// "connect": "^3.4.1",
// "http2": "^3.3.2"
// }
var connect = require('connect');
var http2 = require('http2');
var compression = require('compression');
var app = connect();
app.use(compression());
app.use(function(req, res, next){
for (var i = 1000; i > 0; --i) {
res.write('test');
}
res.end();
});
var options = {
key: '-----BEGIN PRIVATE KEY-----\nMIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALCFSC+jZCN4JHCj\nI/dXL5ZviSYjc4vvOlFBvA4lYu6ReNqICUw1p9ULp/xVrWR7yEtzq+yB+NMrTD1T\nxO4VYKQrDqrYjnshCSo+kbcvyyOh3gO6nZjdVGj50OdrTNof1IL1NNdiknLvxtT6\n1dER8G6DJ/GdgW8v1P65q0sSXOm7AgMBAAECgYBhUdouiYKYG5DbmNYnc6YE5pFS\nuZDmwYoBaqBnnC0jIoji0sVtgtd5GegPspzaHXScRLWwuyeYJPLvjNOx/487iO4Q\nRvf1mgZJ/f1c5MzAmGgbiFFfm79wYZEOeFHRUTCzSgNndRaRHZEABriOEKarcdN9\nt+S5I6/8SxBdXgiuAQJBAN5eIaFxgzSNcoOzN339IeeteGTlXwyxqi/D4ODHv0Ro\nwvjccSiW9QFmcy5MmxkYuFWzuJTea2qLVgJam0EngsECQQDLN/7DtXb9F3Ljithx\nF3SckZxr0Z6WAYPct5Qe4W1AA/ap6XbNXfzsk3f92Cl3H3DaZTvfRUkIMRaDlsxW\n0dd7AkBDwGp+xhcz6+T4O6KswHOUI0aLd1d+hqNT6lqaIkIklcbSDFhuBZCg3JY7\nhRu8icugUSHsOdiAnfOWxASJ1YABAkAILUed/lY8Vs4zo6mT21rA1gcSO4wDAyqY\nHfbiyzVHJyGsso0qNEbyCfkBCMqaVXSIBRzEnhgTMU5zmwS71ZOzAkEAmYIf3UAO\n3VOSGhRFUiJzo+yJtXd69Z7vJK+jPZ0lZ0Ugo/AD/l8l56Y90sdHUchdJbCUdmwK\n9nsjxgWeUcPg1A==\n-----END PRIVATE KEY-----',
cert: '-----BEGIN CERTIFICATE-----\nMIICcjCCAdugAwIBAgIJAId3TwNpkpWoMA0GCSqGSIb3DQEBCwUAMFIxCzAJBgNV\nBAYTAkRFMQwwCgYDVQQIDANOUlcxDzANBgNVBAcMBkFhY2hlbjEQMA4GA1UECgwH\nTGF4YXJKUzESMBAGA1UEAwwJbG9jYWxob3N0MB4XDTE2MDQwNDA5MTYxMFoXDTE3\nMDQwNDA5MTYxMFowUjELMAkGA1UEBhMCREUxDDAKBgNVBAgMA05SVzEPMA0GA1UE\nBwwGQWFjaGVuMRAwDgYDVQQKDAdMYXhhckpTMRIwEAYDVQQDDAlsb2NhbGhvc3Qw\ngZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBALCFSC+jZCN4JHCjI/dXL5ZviSYj\nc4vvOlFBvA4lYu6ReNqICUw1p9ULp/xVrWR7yEtzq+yB+NMrTD1TxO4VYKQrDqrY\njnshCSo+kbcvyyOh3gO6nZjdVGj50OdrTNof1IL1NNdiknLvxtT61dER8G6DJ/Gd\ngW8v1P65q0sSXOm7AgMBAAGjUDBOMB0GA1UdDgQWBBQJ2dQYLeHpf+uQ3n0hWpE8\nHM5mfzAfBgNVHSMEGDAWgBQJ2dQYLeHpf+uQ3n0hWpE8HM5mfzAMBgNVHRMEBTAD\nAQH/MA0GCSqGSIb3DQEBCwUAA4GBAJndPgDbqKu5K1jv+ZCHSadWgxSAtmi64jE8\nXapNVUjLOI8nqZEyxIc5oF6+/CgXY8D/38yU1tb1eFNmav770Szv5skuWHVRajmZ\nBV61YQDN+RiJ2rRdoVxLNi6Amyf4IPaBZTO2SG4CsQd1LvhiYuTzB9hMpAWF9rax\n3AtqJd7e\n-----END CERTIFICATE-----'
};
http2.createServer(options, app).listen(3000);
Metadata
Metadata
Assignees
Labels
No labels