python3-websockify
WebSockets support for any application/server - Python 3
Install
- All systems
-
curl cmd.cat/python3-websockify.sh
- Debian
-
apt-get install python3-websockify
- Ubuntu
-
apt-get install python3-websockify
- Kali Linux
-
apt-get install python3-websockify
- Fedora
-
dnf install python3-websockify
- Windows (WSL2)
-
sudo apt-get update
sudo apt-get install python3-websockify
- Raspbian
-
apt-get install python3-websockify
- Dockerfile
- dockerfile.run/python3-websockify
python3-websockify
WebSockets support for any application/server - Python 3
websockify was formerly named wsproxy and was part of the noVNC project. At the most basic level, websockify just translates WebSockets traffic to normal socket traffic. Websockify accepts the WebSockets handshake, parses it, and then begins forwarding traffic between the client and the target in both directions. Websockify supports all versions of the WebSockets protocol (Hixie and HyBi). The older Hixie versions of the protocol only support UTF-8 text payloads. In order to transport binary data over UTF-8 an encoding must used to encapsulate the data within UTF-8. With Hixie clients, Websockify uses base64 to encode all traffic to and from the client. This does not affect the data between websockify and the server. With HyBi clients, websockify negotiates whether to base64 encode traffic to and from the client via the subprotocol header (Sec-WebSocket-Protocol). The valid subprotocol values are 'binary' and 'base64' and if the client sends both then the server (the Python implementation) will prefer 'binary'. The 'binary' subprotocol indicates that the data will be sent raw using binary WebSocket frames. Some HyBi clients (such as the Flash fallback and older Chrome and iOS versions) do not support binary data which is why the negotiation is necessary. This package provides the Python 3 module.