diff --git a/api/user_auth.go b/api/user_auth.go index 0bfb4fd..94ba2e6 100644 --- a/api/user_auth.go +++ b/api/user_auth.go @@ -26,12 +26,11 @@ var ClientTime = KeyWrapper("__context_client_time") func AuthMiddleware(log *zap.Logger, center auth.Center) mux.MiddlewareFunc { return func(h http.Handler) http.Handler { return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { - var ctx context.Context + ctx := r.Context() box, err := center.Authenticate(r) if err != nil { if err == auth.ErrNoAuthorizationHeader { reqLogOrDefault(ctx, log).Debug("couldn't receive access box for gate key, random key will be used") - ctx = r.Context() } else { reqLogOrDefault(ctx, log).Error("failed to pass authentication", zap.Error(err)) if _, ok := err.(errors.Error); !ok { @@ -41,7 +40,7 @@ func AuthMiddleware(log *zap.Logger, center auth.Center) mux.MiddlewareFunc { return } } else { - ctx = context.WithValue(r.Context(), BoxData, box.AccessBox) + ctx = context.WithValue(ctx, BoxData, box.AccessBox) if !box.ClientTime.IsZero() { ctx = context.WithValue(ctx, ClientTime, box.ClientTime) }