Skip to content

Commit 9cf431a

Browse files
committed
websocketproxy: further improve websocket headers
1 parent b67a358 commit 9cf431a

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

websocketproxy.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,9 +89,14 @@ func (w *WebsocketProxy) ServeHTTP(rw http.ResponseWriter, req *http.Request) {
8989
upgrader = DefaultUpgrader
9090
}
9191

92+
// Only pass those headers to the upgrader.
93+
respHeader := http.Header{}
94+
resp.Header.Add("Sec-WebSocket-Protocol", resp.Header.Get("Sec-WebSocket-Protocol"))
95+
resp.Header.Add("Set-Cookie", resp.Header.Get("Set-Cookie"))
96+
9297
// Now upgrade the existing incoming request to a WebSocket connection.
9398
// Also pass the responseHeader that we gathered from the Dial handshake.
94-
connPub, err := upgrader.Upgrade(rw, req, resp.Header)
99+
connPub, err := upgrader.Upgrade(rw, req, respHeader)
95100
if err != nil {
96101
log.Printf("websocketproxy: couldn't upgrade %s\n", err)
97102
return

0 commit comments

Comments
 (0)