public class WebSocketClientHandshaker00 extends WebSocketClientHandshaker
Performs client 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.
customHeaders| 构造器和说明 |
|---|
WebSocketClientHandshaker00(java.net.URI webSocketURL,
WebSocketVersion version,
java.lang.String subprotocol,
java.util.Map<java.lang.String,java.lang.String> customHeaders)
Constructor with default values
|
WebSocketClientHandshaker00(java.net.URI webSocketURL,
WebSocketVersion version,
java.lang.String subprotocol,
java.util.Map<java.lang.String,java.lang.String> customHeaders,
long maxFramePayloadLength)
Constructor
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
finishHandshake(Channel channel,
HttpResponse response)
Process 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-
|
ChannelFuture |
handshake(Channel channel)
Sends the opening request to the server:
GET /demo HTTP/1.1
Upgrade: WebSocket
Connection: Upgrade
Host: example.com
Origin: http://example.com
Sec-WebSocket-Key1: 4 @1 46546xW%0l 1 5
Sec-WebSocket-Key2: 12998 5 Y3 1 .P00
^n:ds[4U
|
getActualSubprotocol, getExpectedSubprotocol, getMaxFramePayloadLength, getVersion, getWebSocketUrl, isHandshakeComplete, setActualSubprotocol, setHandshakeCompletepublic WebSocketClientHandshaker00(java.net.URI webSocketURL,
WebSocketVersion version,
java.lang.String subprotocol,
java.util.Map<java.lang.String,java.lang.String> customHeaders)
webSocketURL - URL for web socket communications. e.g "ws://myhost.com/mypath". Subsequent web socket frames will be
sent to this URL.version - Version of web socket specification to use to connect to the serversubprotocol - Sub protocol request sent to the server.customHeaders - Map of custom headers to add to the client requestpublic WebSocketClientHandshaker00(java.net.URI webSocketURL,
WebSocketVersion version,
java.lang.String subprotocol,
java.util.Map<java.lang.String,java.lang.String> customHeaders,
long maxFramePayloadLength)
webSocketURL - URL for web socket communications. e.g "ws://myhost.com/mypath". Subsequent web socket frames will be
sent to this URL.version - Version of web socket specification to use to connect to the serversubprotocol - Sub protocol request sent to the server.customHeaders - Map of custom headers to add to the client requestmaxFramePayloadLength - Maximum length of a frame's payloadpublic ChannelFuture handshake(Channel channel)
Sends the opening request to the server:
GET /demo HTTP/1.1 Upgrade: WebSocket Connection: Upgrade Host: example.com Origin: http://example.com Sec-WebSocket-Key1: 4 @1 46546xW%0l 1 5 Sec-WebSocket-Key2: 12998 5 Y3 1 .P00 ^n:ds[4U
handshake 在类中 WebSocketClientHandshakerchannel - Channel into which we can write our requestpublic void finishHandshake(Channel channel, HttpResponse response)
Process 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-
finishHandshake 在类中 WebSocketClientHandshakerchannel - Channelresponse - HTTP response returned from the server for the request sent by beginOpeningHandshake00().WebSocketHandshakeException