WebSocket Masked Messages

· Fonctionnalités

From sgcWebSockets 4.4.8 the log des messages WebSocket a été improved. Jusqu'à présent, les messages étaient enregistrés tels qu'envoyés/reçus par le socket, cela signifie que lorsqu'un message WebSocket était envoyé par le client WebSocket, il était d'abord masqué puis enregistré dans le log. Comme le message était masqué, il ne pouvait pas être lu facilement donc le log était inutile pour le websocket messages envoyé par le client (de même pour les messages WebSocket reçus par le serveur).

Now le websocket frames sont enregistrés UnMasked par défaut (cela peut être personnalisé via la propriété LogFile.UnMaskFrames). Donc lorsque le client envoie un message, il sera enregistré non masqué et lorsque le serveur reçoit un message WebSocket, il sera enregistré non masqué également (dans le cas du serveur, il sera enregistré masqué et non masqué, car le serveur peut gérer plusieurs protocoles et lorsque le buffer est lu il ne sait pas quel est le protocole).

Client WebSocket — messages masqués 

Avant cette modification, les messages WebSocket envoyés étaient enregistrés masqués, et le texte ne pouvait pas être lu.

Stat Connected.
Sent 24/02/2021 10:59:01: GET / HTTP/1.1
Host: echo.websocket.org
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: hKokOwscWkDOF6Y3liZ2yA==
Origin: echo.websocket.org
Sec-WebSocket-Version: 13
Recv 24/02/2021 10:59:01: HTTP/1.1 101 Web Socket Protocol Handshake
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: content-type
Access-Control-Allow-Headers: authorization
Access-Control-Allow-Headers: x-websocket-extensions
Access-Control-Allow-Headers: x-websocket-version
Access-Control-Allow-Headers: x-websocket-protocol
Access-Control-Allow-Origin: echo.websocket.org
Connection: Upgrade
Date: Wed, 24 Feb 2021 09:56:07 GMT
Sec-WebSocket-Accept: pgtoE2wbo/G1uvjCN/CX7N6OltE=
Server: Kaazing Gateway
Upgrade: websocket
Sent 24/02/2021 10:59:07: œoŽ´'zâØ ?èÆ r®Ç|ÙÑ
Lá×zúÇN>¯•
Recv 24/02/2021 10:59:07: Hello from sgcWebSockets!!!!
Stat Disconnected.
Stat Disconnected.
Stat Disconnected. 

 Client WebSocket — messages non masqués

Voici le log, où les messages sent are not masked.

Stat Connected.
Sent 24/02/2021 11:00:16: GET / HTTP/1.1
Host: echo.websocket.org
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: wSZGb+0KEUZacGDFcz47gg==
Origin: echo.websocket.org
Sec-WebSocket-Version: 13
Recv 24/02/2021 11:00:16: HTTP/1.1 101 Web Socket Protocol Handshake
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: content-type
Access-Control-Allow-Headers: authorization
Access-Control-Allow-Headers: x-websocket-extensions
Access-Control-Allow-Headers: x-websocket-version
Access-Control-Allow-Headers: x-websocket-protocol
Access-Control-Allow-Origin: echo.websocket.org
Connection: Upgrade
Date: Wed, 24 Feb 2021 09:57:22 GMT
Sec-WebSocket-Accept: WtGNEtct4WtQ5SAs/PWmvjspj6c=
Server: Kaazing Gateway
Upgrade: websocket
Sent 24/02/2021 11:00:21: [text] Hello from sgcWebSockets!!!!
Recv 24/02/2021 11:00:21: Hello from sgcWebSockets!!!!
Stat Disconnected.
Stat Disconnected.
Stat Disconnected.