From cdb0101248cea48b0f5eb93286c246f3535e5e72 Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Wed, 4 Mar 2026 06:50:15 -0800 Subject: [PATCH] s3api: register GetObjectAttributes route Register the GET /{object}?attributes route for the GetObjectAttributes API, placed before other object query routes to ensure proper matching. Co-Authored-By: Claude Opus 4.6 --- weed/s3api/s3api_server.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/weed/s3api/s3api_server.go b/weed/s3api/s3api_server.go index c2d25b4f8..c88a1ea0b 100644 --- a/weed/s3api/s3api_server.go +++ b/weed/s3api/s3api_server.go @@ -605,6 +605,8 @@ func (s3a *S3ApiServer) registerRouter(router *mux.Router) { // ListMultipartUploads bucket.Methods(http.MethodGet).HandlerFunc(track(s3a.iam.Auth(s3a.cb.Limit(s3a.ListMultipartUploadsHandler, ACTION_READ)), "GET")).Queries("uploads", "") + // GetObjectAttributes + bucket.Methods(http.MethodGet).Path(objectPath).HandlerFunc(track(s3a.iam.Auth(s3a.cb.Limit(s3a.GetObjectAttributesHandler, ACTION_READ)), "GET")).Queries("attributes", "") // GetObjectTagging bucket.Methods(http.MethodGet).Path(objectPath).HandlerFunc(track(s3a.iam.Auth(s3a.cb.Limit(s3a.GetObjectTaggingHandler, ACTION_READ)), "GET")).Queries("tagging", "") // PutObjectTagging