Description
While all supported browsers do appear to use Connection: Upgrade
with capital U and Upgrade: websocket
with all lower case "websocket", and so the case-sensitive matches to Upgrade
and websocket
in app.py
:
matlab-proxy/matlab_proxy/app.py
Lines 374 to 378 in 45276dc
will work fine in most cases, according to RFC6455 these values should be ASCII case-insensitive matches.
This does in fact lead to issues in practice when using matlab_proxy behind a reverse proxy where the reverse proxy may have rewritten Upgrade
as upgrade
(e.g. if you literally configured NGINX according to the instructions on https://nginx.org/en/docs/http/websocket.html). Of course the configuration can be changed such that the reverse proxy outputs Upgrade as well, but that should not be needed according to the RFC spec.