Class WebSocketServerHandshaker00

    • Constructor Detail

      • WebSocketServerHandshaker00

        public WebSocketServerHandshaker00​(String webSocketURL,
                                           String subprotocols,
                                           int maxFramePayloadLength)
        Constructor specifying the destination web socket location
        Parameters:
        webSocketURL - URL for web socket communications. e.g "ws://myhost.com/mypath". Subsequent web socket frames will be sent to this URL.
        subprotocols - CSV of supported protocols
        maxFramePayloadLength - Maximum allowable frame payload length. Setting this value to your application's requirement may reduce denial of service attacks using long data frames.
      • WebSocketServerHandshaker00

        public WebSocketServerHandshaker00​(String webSocketURL,
                                           String subprotocols,
                                           WebSocketDecoderConfig decoderConfig)
        Constructor specifying the destination web socket location
        Parameters:
        webSocketURL - URL for web socket communications. e.g "ws://myhost.com/mypath". Subsequent web socket frames will be sent to this URL.
        subprotocols - CSV of supported protocols
        decoderConfig - Frames decoder configuration.
    • Method Detail

      • newHandshakeResponse

        protected FullHttpResponse newHandshakeResponse​(FullHttpRequest req,
                                                        HttpHeaders headers)

        Handle the web socket handshake for the web socket specification HyBi version 0 and lower. This standard is really a rehash of hixie-76 and hixie-75.

        Browser request to the server:

         GET /demo HTTP/1.1
         Upgrade: WebSocket
         Connection: Upgrade
         Host: example.com
         Origin: http://example.com
         Sec-WebSocket-Protocol: chat, sample
         Sec-WebSocket-Key1: 4 @1  46546xW%0l 1 5
         Sec-WebSocket-Key2: 12998 5 Y3 1  .P00
        
         ^n:ds[4U
         

        Server response:

         HTTP/1.1 101 WebSocket Protocol Handshake
         Upgrade: WebSocket
         Connection: Upgrade
         Sec-WebSocket-Origin: http://example.com
         Sec-WebSocket-Location: ws://example.com/demo
         Sec-WebSocket-Protocol: sample
        
         8jKS'y:G*Co,Wxa-
         
        Specified by:
        newHandshakeResponse in class WebSocketServerHandshaker
      • close

        public io.netty.channel.ChannelFuture close​(io.netty.channel.Channel channel,
                                                    CloseWebSocketFrame frame,
                                                    io.netty.channel.ChannelPromise promise)
        Echo back the closing frame
        Overrides:
        close in class WebSocketServerHandshaker
        Parameters:
        channel - the Channel to use.
        frame - Web Socket frame that was received.
        promise - the ChannelPromise to be notified when the closing handshake is done.
      • close

        public io.netty.channel.ChannelFuture close​(io.netty.channel.ChannelHandlerContext ctx,
                                                    CloseWebSocketFrame frame,
                                                    io.netty.channel.ChannelPromise promise)
        Echo back the closing frame
        Overrides:
        close in class WebSocketServerHandshaker
        Parameters:
        ctx - the ChannelHandlerContext to use.
        frame - Closing Frame that was received.
        promise - the ChannelPromise to be notified when the closing handshake is done.