HTTPServer: add possibility to use additional middlewares (#26514)

This commit is contained in:
Agnès Toulet
2020-07-23 09:54:07 +02:00
committed by GitHub
parent b12d08d9de
commit 1ba95183f6

View File

@ -53,6 +53,7 @@ type HTTPServer struct {
context context.Context
streamManager *live.StreamManager
httpSrv *http.Server
middlewares []macaron.Handler
RouteRegister routing.RouteRegister `inject:""`
Bus bus.Bus `inject:""`
@ -82,6 +83,10 @@ func (hs *HTTPServer) Init() error {
return nil
}
func (hs *HTTPServer) AddMiddleware(middleware macaron.Handler) {
hs.middlewares = append(hs.middlewares, middleware)
}
func (hs *HTTPServer) Run(ctx context.Context) error {
hs.context = ctx
@ -323,6 +328,10 @@ func (hs *HTTPServer) addMiddlewaresAndStaticRoutes() {
}
m.Use(middleware.HandleNoCacheHeader())
for _, mw := range hs.middlewares {
m.Use(mw)
}
}
func (hs *HTTPServer) metricsEndpoint(ctx *macaron.Context) {