feat: midterm shit done
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
import { createErrorResponse } from '../../utils';
|
||||
|
||||
export async function onRequestGet(context) {
|
||||
try {
|
||||
const { env, params } = context;
|
||||
const { filename } = params;
|
||||
|
||||
if (!filename) {
|
||||
return createErrorResponse("Filename is required", 400);
|
||||
}
|
||||
|
||||
const key = "avatars/" + filename;
|
||||
const object = await env.MY_BUCKET.get(key);
|
||||
|
||||
if (object === null) {
|
||||
return new Response("Object Not Found", { status: 404 });
|
||||
}
|
||||
|
||||
const headers = new Headers();
|
||||
object.writeHttpMetadata(headers);
|
||||
headers.set("etag", object.httpEtag);
|
||||
|
||||
return new Response(object.body, {
|
||||
headers,
|
||||
});
|
||||
} catch (error) {
|
||||
console.error("Avatar retrieval error:", error);
|
||||
return createErrorResponse("Server Error", 500);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user