HTTP/2,3 ではそもそも "Host header" ではない(:authority pseudo header)ので、Host headerを与えるのではなく、別の方法を提供するほうが筋がいいと思う。たとえば、「実際にリクエストするip:port」を指定できるようにする、とか。
開発用の適当なドメインとって127.0.0.1に向けて、CaddyあたりでDNS-01させればhttpsつかってアクセスできるしそのドメインを普通にfetch URLに書けばHosts書き換えとかいらんのでは、という気もしますがそういう話ではない?
目的が判らない。デタラメなクライアントの試験がしたいのなら、fetch以前からあるhttp/httpsを使えばいいのでは?/ HTTP2かどうかは関係ないと思うぞ。それが互換性というものだ。/ DNSでなくhostsでやるのが普通では?
WSL上のnodeからkabustationのAPI呼び出そうとしてハマった記憶(Hostがlocalhostじゃないと通らないし、fetchだと上書きできない)。
いつもhttp.requestを使っていたので逆にNode.jsでfetch使う人がいることを知ってちょっと驚いた
Fetch APIとHostヘッダーについて。 サーバサイドの実行環境であるNode.js/Deno/Claudflare Workersなどの挙動について
fetch() では Host ヘッダーを設定できないし話はそこまで単純じゃない - Object.create(null)
HTTP/2,3 ではそもそも "Host header" ではない(:authority pseudo header)ので、Host headerを与えるのではなく、別の方法を提供するほうが筋がいいと思う。たとえば、「実際にリクエストするip:port」を指定できるようにする、とか。
開発用の適当なドメインとって127.0.0.1に向けて、CaddyあたりでDNS-01させればhttpsつかってアクセスできるしそのドメインを普通にfetch URLに書けばHosts書き換えとかいらんのでは、という気もしますがそういう話ではない?
目的が判らない。デタラメなクライアントの試験がしたいのなら、fetch以前からあるhttp/httpsを使えばいいのでは?/ HTTP2かどうかは関係ないと思うぞ。それが互換性というものだ。/ DNSでなくhostsでやるのが普通では?
WSL上のnodeからkabustationのAPI呼び出そうとしてハマった記憶(Hostがlocalhostじゃないと通らないし、fetchだと上書きできない)。
いつもhttp.requestを使っていたので逆にNode.jsでfetch使う人がいることを知ってちょっと驚いた
Fetch APIとHostヘッダーについて。 サーバサイドの実行環境であるNode.js/Deno/Claudflare Workersなどの挙動について