Files
mnote/wolai-frontend/src/app/api/luckysheet/upload-image/route.ts
T
2026-01-18 19:01:31 +08:00

46 lines
1.3 KiB
TypeScript

"use server";
import { Buffer } from "node:buffer";
import { randomUUID } from "node:crypto";
import { NextResponse } from "next/server";
const BUCKET = "media";
const DIRECTORY = "luckysheet";
export async function POST(request: Request) {
return NextResponse.json({ code: 501, msg: "当前仅支持 Convex 模式" }, { status: 501 });
/*
const supabase = await createSupabaseRouteClient();
const formData = await request.formData();
const file = formData.get("image");
if (!(file instanceof File)) {
return NextResponse.json({ code: 400, msg: "缺少 image 文件" }, { status: 400 });
}
const arrayBuffer = await file.arrayBuffer();
const buffer = Buffer.from(arrayBuffer);
const extension = file.name?.split(".").pop() || "bin";
const objectPath = `${DIRECTORY}/${randomUUID()}.${extension}`;
const { error: uploadError } = await supabase.storage
.from(BUCKET)
.upload(objectPath, buffer, { contentType: file.type || "application/octet-stream", upsert: false });
if (uploadError) {
return NextResponse.json({ code: 500, msg: "上传失败", detail: uploadError.message }, { status: 500 });
}
const {
data: { publicUrl },
} = supabase.storage.from(BUCKET).getPublicUrl(objectPath);
return NextResponse.json({
code: 200,
msg: "ok",
url: publicUrl,
});
*/
}