diff options
Diffstat (limited to 'src/pkg/websocket/client.go')
-rw-r--r-- | src/pkg/websocket/client.go | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/pkg/websocket/client.go b/src/pkg/websocket/client.go index f066a1832..f24c46360 100644 --- a/src/pkg/websocket/client.go +++ b/src/pkg/websocket/client.go @@ -7,7 +7,6 @@ package websocket import ( "bufio" "bytes" - "container/vector" "crypto/tls" "fmt" "http" @@ -201,21 +200,21 @@ func handshake(resourceName, host, origin, location, protocol string, br *bufio. bw.WriteString("GET " + resourceName + " HTTP/1.1\r\n") // Step 6-14. push request headers in fields. - var fields vector.StringVector - fields.Push("Upgrade: WebSocket\r\n") - fields.Push("Connection: Upgrade\r\n") - fields.Push("Host: " + host + "\r\n") - fields.Push("Origin: " + origin + "\r\n") + var fields []string + fields = append(fields, "Upgrade: WebSocket\r\n") + fields = append(fields, "Connection: Upgrade\r\n") + fields = append(fields, "Host: "+host+"\r\n") + fields = append(fields, "Origin: "+origin+"\r\n") if protocol != "" { - fields.Push("Sec-WebSocket-Protocol: " + protocol + "\r\n") + fields = append(fields, "Sec-WebSocket-Protocol: "+protocol+"\r\n") } // TODO(ukai): Step 15. send cookie if any. // Step 16-23. generate keys and push Sec-WebSocket-Key<n> in fields. key1, number1 := generateKeyNumber() key2, number2 := generateKeyNumber() - fields.Push("Sec-WebSocket-Key1: " + key1 + "\r\n") - fields.Push("Sec-WebSocket-Key2: " + key2 + "\r\n") + fields = append(fields, "Sec-WebSocket-Key1: "+key1+"\r\n") + fields = append(fields, "Sec-WebSocket-Key2: "+key2+"\r\n") // Step 24. shuffle fields and send them out. for i := 1; i < len(fields); i++ { |