@@ -30,7 +30,8 @@ async function requestHandler(
30
30
getObjectRequestInterface ,
31
31
unknown
32
32
> ,
33
- publicRoute = false
33
+ publicRoute = false ,
34
+ method : 'head' | 'info' = 'head'
34
35
) {
35
36
const { bucketName } = request . params
36
37
const objectName = request . params [ '*' ]
@@ -42,15 +43,21 @@ async function requestHandler(
42
43
await request . storage . asSuperUser ( ) . findBucket ( bucketName , 'id' , {
43
44
isPublic : true ,
44
45
} )
45
- obj = await request . storage . asSuperUser ( ) . from ( bucketName ) . findObject ( objectName , 'id,version' )
46
+ obj = await request . storage
47
+ . asSuperUser ( )
48
+ . from ( bucketName )
49
+ . findObject ( objectName , 'id,version,metadata,user_metadata,created_at' )
46
50
} else {
47
- obj = await request . storage . from ( bucketName ) . findObject ( objectName , 'id,version' )
51
+ obj = await request . storage
52
+ . from ( bucketName )
53
+ . findObject ( objectName , 'id,version,metadata,user_metadata,created_at' )
48
54
}
49
55
50
- return request . storage . renderer ( 'head' ) . render ( request , response , {
56
+ return request . storage . renderer ( method ) . render ( request , response , {
51
57
bucket : storageS3Bucket ,
52
58
key : s3Key ,
53
59
version : obj . version ,
60
+ object : obj ,
54
61
} )
55
62
}
56
63
@@ -90,7 +97,7 @@ export async function publicRoutes(fastify: FastifyInstance) {
90
97
} ,
91
98
} ,
92
99
async ( request , response ) => {
93
- return requestHandler ( request , response , true )
100
+ return requestHandler ( request , response , true , 'info' )
94
101
}
95
102
)
96
103
}
@@ -131,7 +138,7 @@ export async function authenticatedRoutes(fastify: FastifyInstance) {
131
138
} ,
132
139
} ,
133
140
async ( request , response ) => {
134
- return requestHandler ( request , response )
141
+ return requestHandler ( request , response , false , 'info' )
135
142
}
136
143
)
137
144
@@ -151,7 +158,7 @@ export async function authenticatedRoutes(fastify: FastifyInstance) {
151
158
} ,
152
159
} ,
153
160
async ( request , response ) => {
154
- return requestHandler ( request , response )
161
+ return requestHandler ( request , response , false , 'info' )
155
162
}
156
163
)
157
164
0 commit comments