在NodeJS中执行传出的HTTP2请求

时间:2018-03-24 15:40:49

标签: node.js http2

我已经检查了NodeJS documentation,但找不到有关如何使以下代码使用HTTP2执行请求的任何信息:

connect = irc:connect(socket.dns.toip("irc.chat.twitch.tv"), 6667)

即使是最新版本的NodeJS,这还不支持吗?

2 个答案:

答案 0 :(得分:1)

这可以在v9.9.0中找到。你可以看看HTTP2 in Nodejs。如果您想要整个事情,可以在HTTP2中创建secureServer。此外,还可以使用http2触发请求。您可以查看此article了解一些想法

答案 1 :(得分:0)

您将找不到Node.js本机方式:

  

如何使以下代码使用HTTP2执行请求

因为,HTTP2的工作方式与HTTP1.1完全不同。 因此,Node.js http2核心模块导出的接口完全不同,具有复用等附加功能。

要使用HTTP1.1接口发出HTTP2请求,您可以使用npm模块,我亲自编码并使用: http2-client

const {request} = require('http2-client');
const h1Target = 'http://www.example.com/';
const h2Target = 'https://www.example.com/';
const req1 = request(h1Target, (res)=>{
    console.log(`
Url : ${h1Target}
Status : ${res.statusCode}
HttpVersion : ${res.httpVersion}
    `);
});
req1.end();

const req2 = request(h2Target, (res)=>{
    console.log(`
Url : ${h2Target}
Status : ${res.statusCode}
HttpVersion : ${res.httpVersion}
    `);
});
req2.end();