diff options
author | 2023-12-18 14:18:25 +0000 | |
---|---|---|
committer | 2023-12-18 14:18:25 +0000 | |
commit | 8ebb7775a35b632d49a8f294d83ac786666631f3 (patch) | |
tree | 02ac5475274125170132b0a4d9f69bd67491a32c /cmd | |
parent | fix poll total vote double count (#2464) (diff) | |
download | gotosocial-8ebb7775a35b632d49a8f294d83ac786666631f3.tar.xz |
[feature] request blocking by http headers (#2409)
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/gotosocial/action/server/server.go | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/cmd/gotosocial/action/server/server.go b/cmd/gotosocial/action/server/server.go index 3a8965f1e..97c452132 100644 --- a/cmd/gotosocial/action/server/server.go +++ b/cmd/gotosocial/action/server/server.go @@ -219,14 +219,19 @@ var Start action.GTSAction = func(ctx context.Context) error { if err != nil { return fmt.Errorf("error creating router: %s", err) } - middlewares := []gin.HandlerFunc{ - middleware.AddRequestID(config.GetRequestIDHeader()), // requestID middleware must run before tracing - } + // Start preparing middleware stack. + middlewares := make([]gin.HandlerFunc, 1) + + // RequestID middleware must run before tracing! + middlewares[0] = middleware.AddRequestID(config.GetRequestIDHeader()) + + // Add tracing middleware if enabled. if config.GetTracingEnabled() { middlewares = append(middlewares, tracing.InstrumentGin()) } + // Add metrics middleware if enabled. if config.GetMetricsEnabled() { middlewares = append(middlewares, metrics.InstrumentGin()) } @@ -235,6 +240,7 @@ var Start action.GTSAction = func(ctx context.Context) error { // note: hooks adding ctx fields must be ABOVE // the logger, otherwise won't be accessible. middleware.Logger(config.GetLogClientIP()), + middleware.HeaderFilter(&state), middleware.UserAgent(), middleware.CORS(), middleware.ExtraHeaders(), |