public class WebSocketServerHandshaker00 extends WebSocketServerHandshaker
Performs server side opening and closing handshakes for web socket specification version draft-ietf-hybi-thewebsocketprotocol- 00
A very large portion of this code was taken from the Netty 3.2 HTTP example.
logger, SUB_PROTOCOL_WILDCARD
Constructor and Description |
---|
WebSocketServerHandshaker00(String webSocketURL,
String subprotocols,
int maxFramePayloadLength)
Constructor specifying the destination web socket location
|
Modifier and Type | Method and Description |
---|---|
ChannelFuture |
close(Channel channel,
CloseWebSocketFrame frame,
ChannelPromise promise)
Echo back the closing frame
|
protected FullHttpResponse |
newHandshakeResponse(FullHttpRequest req,
HttpHeaders headers)
Handle the web socket handshake for the web socket specification HyBi version 0 and lower.
|
protected WebSocketFrameDecoder |
newWebsocketDecoder()
Returns the decoder to use after handshake is complete.
|
protected WebSocketFrameEncoder |
newWebSocketEncoder()
Returns the encoder to use after the handshake is complete.
|
close, handshake, handshake, handshake, handshake, maxFramePayloadLength, selectedSubprotocol, selectSubprotocol, subprotocols, uri, version
public WebSocketServerHandshaker00(String webSocketURL, String subprotocols, int maxFramePayloadLength)
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 protocolsmaxFramePayloadLength
- Maximum allowable frame payload length. Setting this value to your application's requirement may
reduce denial of service attacks using long data frames.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-
newHandshakeResponse
in class WebSocketServerHandshaker
public ChannelFuture close(Channel channel, CloseWebSocketFrame frame, ChannelPromise promise)
close
in class WebSocketServerHandshaker
channel
- Channelframe
- Web Socket frame that was receivedpromise
- the ChannelPromise
to be notified when the closing handshake is doneprotected WebSocketFrameDecoder newWebsocketDecoder()
WebSocketServerHandshaker
newWebsocketDecoder
in class WebSocketServerHandshaker
protected WebSocketFrameEncoder newWebSocketEncoder()
WebSocketServerHandshaker
newWebSocketEncoder
in class WebSocketServerHandshaker
Copyright © 2008–2017 The Netty Project. All rights reserved.