diff --git a/agent/app/dto/request/website.go b/agent/app/dto/request/website.go index bdc8b5b5f..904b212eb 100644 --- a/agent/app/dto/request/website.go +++ b/agent/app/dto/request/website.go @@ -42,7 +42,7 @@ type WebsiteCreate struct { } type StreamConfig struct { - StreamPorts string `json:"streamPorts" validate:"required"` + StreamPorts string `json:"streamPorts"` Name string `json:"name"` Algorithm string `json:"algorithm"` diff --git a/agent/app/service/website.go b/agent/app/service/website.go index cd570f094..c6a6c12dd 100644 --- a/agent/app/service/website.go +++ b/agent/app/service/website.go @@ -282,6 +282,9 @@ func (w WebsiteService) CreateWebsite(create request.WebsiteCreate) (err error) primaryDomain string ) if website.Type == constant.Stream { + if create.StreamConfig.StreamPorts == "" { + return buserr.New("ErrTypePortRange") + } website.PrimaryDomain = create.Name website.Protocol = constant.ProtocolStream website.StreamPorts = create.StreamConfig.StreamPorts @@ -2400,6 +2403,9 @@ func (w WebsiteService) ExecComposer(req request.ExecComposerReq) error { } func (w WebsiteService) UpdateStream(req request.StreamUpdate) error { + if req.StreamConfig.StreamPorts == ""{ + return buserr.New("ErrTypePortRange") + } website, err := websiteRepo.GetFirst(repo.WithByID(req.WebsiteID)) if err != nil { return err diff --git a/agent/app/service/website_utils.go b/agent/app/service/website_utils.go index bf0c98034..41edbc732 100644 --- a/agent/app/service/website_utils.go +++ b/agent/app/service/website_utils.go @@ -4,7 +4,6 @@ import ( "context" "encoding/json" "fmt" - "github.com/1Panel-dev/1Panel/agent/utils/xpack" "log" "net" "os" @@ -15,6 +14,8 @@ import ( "syscall" "time" + "github.com/1Panel-dev/1Panel/agent/utils/xpack" + "github.com/1Panel-dev/1Panel/agent/app/repo" "github.com/1Panel-dev/1Panel/agent/app/dto/request" @@ -189,6 +190,9 @@ func configDefaultNginx(website *model.Website, domains []model.WebsiteDomain, a config *components.Config ) if website.Type == constant.Stream { + if streamConfig.StreamPorts == "" { + return buserr.New("ErrTypePortRange") + } nginxContent := nginx_conf.GetWebsiteFile("stream_default.conf") config, err = parser.NewStringParser(string(nginxContent)).Parse() if err != nil {