Hi!
First of all, thanks for all of the hard work that goes into Headscale. I use it daily for personal use and couldn't be happier. 馃檹
I'm wondering about the use of the POST method in the Websocket handshake when connecting to Headscale. Per Section 4.1 of RFC 6455, "the method of the request MUST be GET". Further down the RFC specifies that invalid requests (such as methods other than GET) should be rejected.
I understand deviating from the spec if required - however, some proxies really don't handle Websocket handshakes via POST well (see this StackOverflow and this issue for lack of compatibility with Cloudflare Tunnel, a reverse proxy cloudflare/cloudflared#883).
I was wondering if there was a purpose making the Websocket handshake be a POST instead of the standard GET? 馃檪
Hi!
First of all, thanks for all of the hard work that goes into Headscale. I use it daily for personal use and couldn't be happier. 馃檹
I'm wondering about the use of the POST method in the Websocket handshake when connecting to Headscale. Per Section 4.1 of RFC 6455, "the method of the request MUST be GET". Further down the RFC specifies that invalid requests (such as methods other than GET) should be rejected.
I understand deviating from the spec if required - however, some proxies really don't handle Websocket handshakes via POST well (see this StackOverflow and this issue for lack of compatibility with Cloudflare Tunnel, a reverse proxy cloudflare/cloudflared#883).
I was wondering if there was a purpose making the Websocket handshake be a POST instead of the standard GET? 馃檪