From 8360aa59d1ed50ed42542fdfaf55f16a1153164d Mon Sep 17 00:00:00 2001 From: yusing Date: Sun, 17 Aug 2025 17:36:07 +0800 Subject: [PATCH] fix(websocket): allow localhost origin in WebSocket manager --- internal/net/gphttp/websocket/manager.go | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/internal/net/gphttp/websocket/manager.go b/internal/net/gphttp/websocket/manager.go index fd49f649..24d53eef 100644 --- a/internal/net/gphttp/websocket/manager.go +++ b/internal/net/gphttp/websocket/manager.go @@ -44,10 +44,7 @@ var defaultUpgrader = websocket.Upgrader{ if err != nil { return false } - if u.Scheme != "http" && u.Scheme != "https" { - return false - } - if len(u.Host) == 0 { + if u.Host == "" { return false } originHost := strings.ToLower(u.Hostname()) @@ -55,8 +52,10 @@ var defaultUpgrader = websocket.Upgrader{ if h, _, e := net.SplitHostPort(reqHost); e == nil { reqHost = h } + if reqHost == "127.0.0.1" || reqHost == "localhost" { + return true + } reqHost = strings.ToLower(reqHost) - return originHost == reqHost }, }