Как включить сжатие в WebSockets в .NET 6C#

Место общения программистов C#
Anonymous
Как включить сжатие в WebSockets в .NET 6

Сообщение Anonymous »

Я использую .NET 6 для установления соединения WebSocket и для этого использую «ClientWebSocket». Мне известно, что сервер поддерживает «выкачивание разрешения» из следующего рукопожатия.

Код: Выделить всё

GET / HTTP/1.1
Sec-WebSocket-Version: 13
Sec-WebSocket-Key: 4Qecg52c4NaUM7RDCcW9/g==
Connection: Upgrade
Upgrade: websocket
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits
Host: domainname:64901

HTTP/1.1 101 WebSocket Protocol Handshake
Upgrade: WebSocket
Connection: Upgrade
Sec-WebSocket-Accept: +lpWMhWJ1SpnmxcxRtx/Bk+k5q8=
Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits=15
Итак, в .NET, когда я хочу включить «permessage-deflate»
Какие параметры «ClientWebSocket» следует включить?
Какие значения объект «WebSocketDeflateOptions» должен установить для «permessage-deflate», если требуется?
Достаточно ли добавить только заголовок запроса «Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits» сжатие?
Нужно ли выполнять сжатие/распаковку до/после отправки/получения контента вручную или обрабатываться внутри объекта ClientWebSocket?
Нужно пример, где «permessage-deflate» включен в .NET 6

Подробнее здесь: https://stackoverflow.com/questions/790 ... s-in-net-6

Вернуться в «C#»