From bfbbf4836bc208bfe7cb1496a17ff5e968d34be5 Mon Sep 17 00:00:00 2001 From: EGOIST Date: Fri, 6 May 2022 22:12:03 +0800 Subject: [PATCH] set content-type when uploading image --- app/lib/s3.server.ts | 4 +++- app/routes/api/save-avatar.ts | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/app/lib/s3.server.ts b/app/lib/s3.server.ts index 6a33cb7a..e48d751d 100644 --- a/app/lib/s3.server.ts +++ b/app/lib/s3.server.ts @@ -25,13 +25,15 @@ export const s3 = singleton("s3-client", () => { export const s3uploadFile = async ( filename: string, - file: PutObjectRequest["Body"] | string | Buffer + file: PutObjectRequest["Body"] | string | Buffer, + contentType?: string ) => { await s3.send( new PutObjectCommand({ Bucket: S3_BUCKET_NAME, Key: filename, Body: file, + ContentType: contentType, }) ) } diff --git a/app/routes/api/save-avatar.ts b/app/routes/api/save-avatar.ts index 09c09091..3819279a 100644 --- a/app/routes/api/save-avatar.ts +++ b/app/routes/api/save-avatar.ts @@ -20,7 +20,7 @@ export const action: ActionFunction = async ({ request }) => { } const buffer = Buffer.concat(chunks) const filename = `${user.id}/${nanoid()}.jpg` - await s3uploadFile(filename, buffer) + await s3uploadFile(filename, buffer, "image/jpeg") return filename } const formData = await unstable_parseMultipartFormData(request, uploadHandler)