diff --git a/pkg/hypertext/proxies.go b/pkg/hypertext/proxies.go index e71d921..234b006 100644 --- a/pkg/hypertext/proxies.go +++ b/pkg/hypertext/proxies.go @@ -1,10 +1,11 @@ package hypertext import ( - "github.com/spf13/viper" "math/rand" "regexp" + "github.com/spf13/viper" + "code.smartsheep.studio/goatworks/roadsign/pkg/navi" "github.com/gofiber/fiber/v2" "github.com/samber/lo" @@ -20,13 +21,13 @@ func ProxiesHandler(ctx *fiber.Ctx) error { for _, region := range navi.R.Regions { // Matching rules for _, location := range region.Locations { - if !lo.Contains(location.Host, host) { + if !lo.Contains(location.Hosts, host) { continue } if !func() bool { flag := false - for _, pattern := range location.Path { + for _, pattern := range location.Paths { if ok, _ := regexp.MatchString(pattern, path); ok { flag = true break diff --git a/pkg/navi/struct.go b/pkg/navi/struct.go index f3166c9..0c43cc8 100644 --- a/pkg/navi/struct.go +++ b/pkg/navi/struct.go @@ -20,8 +20,8 @@ type Region struct { type Location struct { ID string `json:"id" toml:"id"` - Host []string `json:"host" toml:"host"` - Path []string `json:"path" toml:"path"` + Hosts []string `json:"hosts" toml:"hosts"` + Paths []string `json:"paths" toml:"paths"` Queries map[string]string `json:"queries" toml:"queries"` Headers map[string][]string `json:"headers" toml:"headers"` Destinations []Destination `json:"destinations" toml:"destinations"`