type UserID string type userIDKey struct{} func GetUserID(ctx context.Context) (UserID, bool) { val, ok := ctx.Value(userIDKey{}).(UserID) return val, ok } func WithUserID(ctx context.Context, userID UserID) { return context.WithValue(ctx, userIDKey{}, userID) } ctx := req.Context() // リクエストの context.Context // JWT などから取り出した User ID を context へセット ctx = WithUserID(ctx, "user-id") // ビジネスロジックで cont