summaryrefslogtreecommitdiff
path: root/app/api/revision-upload-ship
diff options
context:
space:
mode:
Diffstat (limited to 'app/api/revision-upload-ship')
-rw-r--r--app/api/revision-upload-ship/route.ts15
1 files changed, 6 insertions, 9 deletions
diff --git a/app/api/revision-upload-ship/route.ts b/app/api/revision-upload-ship/route.ts
index 38762e5d..3d1ebba9 100644
--- a/app/api/revision-upload-ship/route.ts
+++ b/app/api/revision-upload-ship/route.ts
@@ -11,7 +11,7 @@ import {
import { and, eq } from "drizzle-orm"
/* 보안 강화된 파일 저장 유틸리티 */
-import { saveFile, SaveFileResult } from "@/lib/file-stroage"
+import { saveFile, SaveFileResult, saveFileStream } from "@/lib/file-stroage"
/* change log 유틸 */
import {
@@ -42,11 +42,11 @@ export async function POST(request: NextRequest) {
return NextResponse.json({ error: "No files provided" }, { status: 400 })
// 기본 파일 크기 검증 (보안 함수에서도 검증하지만 조기 체크)
- const MAX = 50 * 1024 * 1024 // 50MB (다이얼로그 제한과 맞춤)
+ const MAX = 1024 * 1024 * 1024
for (const f of attachmentFiles) {
if (f.size > MAX) {
return NextResponse.json(
- { error: `${f.name} exceeds 50MB limit` },
+ { error: `${f.name} exceeds 1GB limit` },
{ status: 400 }
)
}
@@ -197,12 +197,9 @@ export async function POST(request: NextRequest) {
console.log(`🔐 보안 검증 시작: ${file.name}`)
// 보안 강화된 파일 저장
- const saveResult: SaveFileResult = await saveFile({
- file,
- directory: "documents", // 문서 전용 디렉토리
- originalName: file.name,
- userId: uploaderName || "anonymous", // 업로더 정보 로깅용
- })
+ const saveResult = file.size > 100 * 1024 * 1024
+ ? await saveFileStream({ file, directory: "documents", userId: uploaderName ||""})
+ : await saveFile({ file, directory: "documents", userId: uploaderName ||"" })
if (!saveResult.success) {
console.error(`❌ 파일 보안 검증 실패: ${file.name} - ${saveResult.error}`)