reactor / reactor-netty

TCP/HTTP/UDP/QUIC client/server with Reactor over Netty

Home Page:https://projectreactor.io

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Customize WebSocketClientCompressionHandler

claraccio opened this issue · comments

I am getting the following exception
io.netty.handler.codec.CodecException: invalid WebSocket Extension handshake for "permessage-deflate; server_no_context_takeover; client_no_context_takeover"

And to fix that I would have to change the WebSocketClientCompressionHandler.INSTANCE that is hard-coded in the reactor-netty code.
The PerMessageDeflateClientExtensionHandshaker should take true parameters on its constructor for allowClientNoContext and requestedServerNoContext.

I do not see any way in the current version to replace that singleton, which is done here:
addHandlerFirst(NettyPipeline.WsCompressionHandler, WebSocketClientCompressionHandler.INSTANCE);
in HttpClientOperations

@claraccio I'm going to add configurations for allowClientNoContext and requestedServerNoContext. Will this be enough for your use case? I'm targeting 1.1.14 release in December.

Hi @violetagg, thanks for your help. Yes that would be enough.

Looks good to me