🌊
【Node.js】TCP クライアントで HTTP/2 フレームを送信する
まず nghttpd で TLS なしの HTTP/2 サーバーを起動させる
/usr/sbin/nghttpd 8000 --no-tls -v -d ./web
次のようなクライアントコードを用意する
client.js
const net = require('node:net');
// https://gist.github.com/masakielastic/d1ddb08ef82ab6d919bd13f121c663d3
const client = net.createConnection({ port: 8000 }, () => {
client.write(h2frames());
});
client.on('error', (err) => {
throw err;
});
client.on('data', (data) => {
console.log(data.toString('hex').toUpperCase());
client.destroy();
});
実行結果
node client.js
00000604000000000000030000006400000004010000000000005B010400000001887690AA69D29AE452A9A74A6B13015DB12E0F5889A47E561CC58197000F6196DF3DBF4A05D535112A080269410AE05AB827D4C5A37F0F0D01366C96DC34FD280714CB6D0A08026940BF702FDC6DB53168DF5F87497CA589D34D1F00000600010000000148656C6C6F0A
Discussion