Class WebSocketServerHandshaker13
- java.lang.Object
-
- io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker
-
- io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker13
-
public class WebSocketServerHandshaker13 extends WebSocketServerHandshaker
Performs server side opening and closing handshakes for RFC 6455 (originally web socket specification draft-ietf-hybi-thewebsocketprotocol-17).
-
-
Field Summary
Fields Modifier and Type Field Description static java.lang.StringWEBSOCKET_13_ACCEPT_GUID-
Fields inherited from class io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker
logger, SUB_PROTOCOL_WILDCARD
-
-
Constructor Summary
Constructors Constructor Description WebSocketServerHandshaker13(java.lang.String webSocketURL, java.lang.String subprotocols, boolean allowExtensions, int maxFramePayloadLength)Constructor specifying the destination web socket locationWebSocketServerHandshaker13(java.lang.String webSocketURL, java.lang.String subprotocols, boolean allowExtensions, int maxFramePayloadLength, boolean allowMaskMismatch)Constructor specifying the destination web socket locationWebSocketServerHandshaker13(java.lang.String webSocketURL, java.lang.String subprotocols, WebSocketDecoderConfig decoderConfig)Constructor specifying the destination web socket location
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected FullHttpResponsenewHandshakeResponse(FullHttpRequest req, HttpHeaders headers)Handle the web socket handshake for the web socket specification HyBi versions 13-17.protected WebSocketFrameDecodernewWebsocketDecoder()Returns the decoder to use after handshake is complete.protected WebSocketFrameEncodernewWebSocketEncoder()Returns the encoder to use after the handshake is complete.-
Methods inherited from class io.netty.handler.codec.http.websocketx.WebSocketServerHandshaker
close, close, close, close, decoderConfig, handshake, handshake, handshake, handshake, maxFramePayloadLength, selectedSubprotocol, selectSubprotocol, subprotocols, uri, version
-
-
-
-
Field Detail
-
WEBSOCKET_13_ACCEPT_GUID
public static final java.lang.String WEBSOCKET_13_ACCEPT_GUID
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
WebSocketServerHandshaker13
public WebSocketServerHandshaker13(java.lang.String webSocketURL, java.lang.String subprotocols, boolean allowExtensions, 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 protocolsallowExtensions- Allow extensions to be used in the reserved bits of the web socket framemaxFramePayloadLength- Maximum allowable frame payload length. Setting this value to your application's requirement may reduce denial of service attacks using long data frames.
-
WebSocketServerHandshaker13
public WebSocketServerHandshaker13(java.lang.String webSocketURL, java.lang.String subprotocols, boolean allowExtensions, int maxFramePayloadLength, boolean allowMaskMismatch)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 protocolsallowExtensions- Allow extensions to be used in the reserved bits of the web socket framemaxFramePayloadLength- Maximum allowable frame payload length. Setting this value to your application's requirement may reduce denial of service attacks using long data frames.allowMaskMismatch- When set to true, frames which are not masked properly according to the standard will still be accepted.
-
WebSocketServerHandshaker13
public WebSocketServerHandshaker13(java.lang.String webSocketURL, java.lang.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 protocolsdecoderConfig- Frames decoder configuration.
-
-
Method Detail
-
newHandshakeResponse
protected FullHttpResponse newHandshakeResponse(FullHttpRequest req, HttpHeaders headers)
Handle the web socket handshake for the web socket specification HyBi versions 13-17. Versions 13-17 share the same wire protocol.
Browser request to the server:
GET /chat HTTP/1.1 Host: server.example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ== Origin: http://example.com Sec-WebSocket-Protocol: chat, superchat Sec-WebSocket-Version: 13
Server response:
HTTP/1.1 101 Switching Protocols Upgrade: websocket Connection: Upgrade Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo= Sec-WebSocket-Protocol: chat
- Specified by:
newHandshakeResponsein classWebSocketServerHandshaker
-
newWebsocketDecoder
protected WebSocketFrameDecoder newWebsocketDecoder()
Description copied from class:WebSocketServerHandshakerReturns the decoder to use after handshake is complete.- Specified by:
newWebsocketDecoderin classWebSocketServerHandshaker
-
newWebSocketEncoder
protected WebSocketFrameEncoder newWebSocketEncoder()
Description copied from class:WebSocketServerHandshakerReturns the encoder to use after the handshake is complete.- Specified by:
newWebSocketEncoderin classWebSocketServerHandshaker
-
-