From 80e643c49282caaeb2244e452d909f9ecb2e5b9d Mon Sep 17 00:00:00 2001 From: fiatjaf Date: Sun, 26 Dec 2021 20:56:42 -0300 Subject: [PATCH] expose Router so servers can inject their own routes. --- start.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/start.go b/start.go index bd6cba4..3db9fbb 100644 --- a/start.go +++ b/start.go @@ -19,7 +19,7 @@ type Settings struct { var s Settings var log = zerolog.New(os.Stderr).Output(zerolog.ConsoleWriter{Out: os.Stderr}) -var router = mux.NewRouter() +var Router = mux.NewRouter() func Start(relay Relay) { if err := envconfig.Process("", &s); err != nil { @@ -32,7 +32,8 @@ func Start(relay Relay) { Log.Fatal().Err(err).Msg("failed to start") } - router.Path("/").Methods("GET").HandlerFunc(handleWebsocket(relay)) + Router.Path("/").Methods("GET").Headers("Upgrade", "websocket"). + HandlerFunc(handleWebsocket(relay)) if inj, ok := relay.(Injector); ok { go func() { @@ -43,7 +44,7 @@ func Start(relay Relay) { } srv := &http.Server{ - Handler: cors.Default().Handler(router), + Handler: cors.Default().Handler(Router), Addr: s.Host + ":" + s.Port, WriteTimeout: 2 * time.Second, ReadTimeout: 2 * time.Second,