From 2c95e6b09feb90211e38f0f4071f6212a473751d Mon Sep 17 00:00:00 2001 From: Joachim Bauch Date: Wed, 16 Apr 2014 18:18:28 +0200 Subject: [PATCH] Support "Sec-Websocket-Protocol" for old-style "Upgrade" calls. --- upgrader.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/upgrader.go b/upgrader.go index 35cffb8..f9d7038 100644 --- a/upgrader.go +++ b/upgrader.go @@ -144,6 +144,8 @@ func (u *Upgrader) Upgrade(w http.ResponseWriter, r *http.Request, responseHeade break } } + } else if responseHeader != nil { + c.subprotocol = responseHeader.Get("Sec-Websocket-Protocol") } p := c.writeBuf[:0] @@ -156,6 +158,9 @@ func (u *Upgrader) Upgrade(w http.ResponseWriter, r *http.Request, responseHeade p = append(p, "\r\n"...) } for k, vs := range responseHeader { + if k == "Sec-Websocket-Protocol" { + continue + } for _, v := range vs { p = append(p, k...) p = append(p, ": "...)