// package serv_pwa -- сервер PWA для клиента package serv_pwa import ( "fmt" "net/http" "os" "github.com/maxence-charriere/go-app/v9/pkg/app" ) type hello struct { app.Compo } func (h *hello) Render() app.UI { return app.H1().Text("Hello World!") } // ServPwa -- встренный сервер HTTP для обработки запросов PWA-клиента type ServPwa struct { } // NewServPwa -- возвращает новый PWA-сервер func NewServPwa() *ServPwa { sf := &ServPwa{} return sf } func (sf *ServPwa) Run() error { app.Route("/", &hello{}) app.RunWhenOnBrowser() http.Handle("/", &app.Handler{ Name: "Hello", Description: "An Hello World! example", }) port := os.Getenv("SERVER_HTTP_PORT") if port == "" { return fmt.Errorf("ServHttp.Run(): env SERVER_HTTP_PORT not defined") } if err := http.ListenAndServe(port, nil); err != nil { return fmt.Errorf("ServHttp.Run(): in serve HTTP, err=\n\t%w", err) } return nil }