public class WebSocketServerHandshaker08 extends WebSocketServerHandshaker
针对网络套接字规范版本draft-ietf-hybi-thewebsocketprotocol- 10执行服务器端打开和关闭握手
| Modifier and Type | Field and Description | 
|---|---|
| static java.lang.String | WEBSOCKET_08_ACCEPT_GUID | 
logger, SUB_PROTOCOL_WILDCARD| Constructor and Description | 
|---|
| WebSocketServerHandshaker08(java.lang.String webSocketURL, java.lang.String subprotocols, boolean allowExtensions, int maxFramePayloadLength)
              指定目标Web套接字位置的构造函数 
             | 
| WebSocketServerHandshaker08(java.lang.String webSocketURL, java.lang.String subprotocols, boolean allowExtensions, int maxFramePayloadLength, boolean allowMaskMismatch)
              指定目标Web套接字位置的构造函数 
             | 
| Modifier and Type | Method and Description | 
|---|---|
| protected FullHttpResponse | newHandshakeResponse(FullHttpRequest req, HttpHeaders headers)
              处理Web套接字规范 
             HyBi version 8 to 10的Web套接字握手。 
             | 
| protected WebSocketFrameDecoder | newWebsocketDecoder()
              返回握手完成后使用的解码器。 
             | 
| protected WebSocketFrameEncoder | newWebSocketEncoder()
              返回握手完成后使用的编码器。 
             | 
close, close, handshake, handshake, handshake, handshake, maxFramePayloadLength, selectedSubprotocol, selectSubprotocol, subprotocols, uri, versionpublic static final java.lang.String WEBSOCKET_08_ACCEPT_GUID
public WebSocketServerHandshaker08(java.lang.String webSocketURL,
                                   java.lang.String subprotocols,
                                   boolean allowExtensions,
                                   int maxFramePayloadLength) 
          webSocketURL - 网络套接字通信的URL。 
            例如“ws://myhost.com/mypath”。 
            后续的网络套接字帧将被发送到这个URL。 
           subprotocols - 支持的协议的CSV 
           allowExtensions - 允许在web套接字帧的保留位中使用扩展名 
           maxFramePayloadLength - 最大允许帧有效载荷长度。 
            将此值设置为应用程序的要求可能会减少使用长数据帧的拒绝服务攻击。 
           public WebSocketServerHandshaker08(java.lang.String webSocketURL,
                                   java.lang.String subprotocols,
                                   boolean allowExtensions,
                                   int maxFramePayloadLength,
                                   boolean allowMaskMismatch) 
          webSocketURL - Web套接字通信的URL。 
            例如“ws://myhost.com/mypath”。 
            后续的网络套接字帧将被发送到这个URL。 
           subprotocols - 支持的协议的CSV 
           allowExtensions - 允许在web套接字帧的保留位中使用扩展名 
           maxFramePayloadLength - 最大允许帧有效载荷长度。 
            将此值设置为应用程序的要求可能会减少使用长数据帧的拒绝服务攻击。 
           allowMaskMismatch - 设置为true时,仍然会接受根据标准未正确屏蔽的帧。 
           protected FullHttpResponse newHandshakeResponse(FullHttpRequest req, HttpHeaders headers)
处理Web套接字规范HyBi version 8 to 10的Web套接字握手。 版本8,9和10共享相同的有线协议。
浏览器请求到服务器:
  GET /chat HTTP/1.1
 Host: server.example.com
 Upgrade: websocket
 Connection: Upgrade
 Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
 Sec-WebSocket-Origin: http://example.com
 Sec-WebSocket-Protocol: chat, superchat
 Sec-WebSocket-Version: 8  
           服务器响应:
  HTTP/1.1 101 Switching Protocols
 Upgrade: websocket
 Connection: Upgrade
 Sec-WebSocket-Accept: s3pPLMBiTxaQ9kYGzzhZRbK+xOo=
 Sec-WebSocket-Protocol: chat  
          newHandshakeResponse在课程 
            WebSocketServerHandshaker 
           protected WebSocketFrameDecoder newWebsocketDecoder()
WebSocketServerHandshaker 
          newWebsocketDecoder在课堂上 
            WebSocketServerHandshaker 
           protected WebSocketFrameEncoder newWebSocketEncoder()
WebSocketServerHandshaker 
          newWebSocketEncoder在课堂上 
            WebSocketServerHandshaker 
           Copyright © 2008–2018 The Netty Project. All rights reserved.