mirror of
https://github.com/yusing/godoxy.git
synced 2025-05-20 04:42:33 +02:00
fixed stats websocket endpoint when no match_domains configured
This commit is contained in:
parent
a531896bd6
commit
3bf520541b
3 changed files with 13 additions and 9 deletions
|
@ -19,18 +19,21 @@ func Stats(w http.ResponseWriter, r *http.Request) {
|
||||||
}
|
}
|
||||||
|
|
||||||
func StatsWS(w http.ResponseWriter, r *http.Request) {
|
func StatsWS(w http.ResponseWriter, r *http.Request) {
|
||||||
localAddresses := []string{"127.0.0.1", "10.0.*.*", "172.16.*.*", "192.168.*.*"}
|
var originPats []string
|
||||||
originPats := make([]string, len(config.Value().MatchDomains)+len(localAddresses))
|
|
||||||
|
|
||||||
if len(originPats) == 0 {
|
localAddresses := []string{"127.0.0.1", "10.0.*.*", "172.16.*.*", "192.168.*.*"}
|
||||||
|
|
||||||
|
if len(config.Value().MatchDomains) == 0 {
|
||||||
U.LogWarn(r).Msg("no match domains configured, accepting websocket API request from all origins")
|
U.LogWarn(r).Msg("no match domains configured, accepting websocket API request from all origins")
|
||||||
originPats = []string{"*"}
|
originPats = []string{"*"}
|
||||||
} else {
|
} else {
|
||||||
|
originPats = make([]string, len(config.Value().MatchDomains))
|
||||||
for i, domain := range config.Value().MatchDomains {
|
for i, domain := range config.Value().MatchDomains {
|
||||||
originPats[i] = "*." + domain
|
originPats[i] = "*" + domain
|
||||||
}
|
}
|
||||||
originPats = append(originPats, localAddresses...)
|
originPats = append(originPats, localAddresses...)
|
||||||
}
|
}
|
||||||
|
U.LogInfo(r).Msgf("websocket API request from origins: %s", originPats)
|
||||||
if common.IsDebug {
|
if common.IsDebug {
|
||||||
originPats = []string{"*"}
|
originPats = []string{"*"}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,6 +3,7 @@ package config
|
||||||
import (
|
import (
|
||||||
"os"
|
"os"
|
||||||
"strconv"
|
"strconv"
|
||||||
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
|
@ -177,6 +178,11 @@ func (cfg *Config) load() E.Error {
|
||||||
errs.Add(cfg.loadRouteProviders(&model.Providers))
|
errs.Add(cfg.loadRouteProviders(&model.Providers))
|
||||||
|
|
||||||
cfg.value = model
|
cfg.value = model
|
||||||
|
for i, domain := range model.MatchDomains {
|
||||||
|
if !strings.HasPrefix(domain, ".") {
|
||||||
|
model.MatchDomains[i] = "." + domain
|
||||||
|
}
|
||||||
|
}
|
||||||
route.SetFindMuxDomains(model.MatchDomains)
|
route.SetFindMuxDomains(model.MatchDomains)
|
||||||
return errs.Error()
|
return errs.Error()
|
||||||
}
|
}
|
||||||
|
|
|
@ -64,11 +64,6 @@ func SetFindMuxDomains(domains []string) {
|
||||||
if len(domains) == 0 {
|
if len(domains) == 0 {
|
||||||
findMuxFunc = findMuxAnyDomain
|
findMuxFunc = findMuxAnyDomain
|
||||||
} else {
|
} else {
|
||||||
for i, domain := range domains {
|
|
||||||
if !strings.HasPrefix(domain, ".") {
|
|
||||||
domains[i] = "." + domain
|
|
||||||
}
|
|
||||||
}
|
|
||||||
findMuxFunc = findMuxByDomains(domains)
|
findMuxFunc = findMuxByDomains(domains)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue