diff options
| author | dujinkim <dujin.kim@dtsolution.co.kr> | 2025-07-25 07:51:15 +0000 |
|---|---|---|
| committer | dujinkim <dujin.kim@dtsolution.co.kr> | 2025-07-25 07:51:15 +0000 |
| commit | 2650b7c0bb0ea12b68a58c0439f72d61df04b2f1 (patch) | |
| tree | 17156183fd74b69d78178065388ac61a18ac07b4 /app/api/revision-upload-ship | |
| parent | d32acea05915bd6c1ed4b95e56c41ef9204347bc (diff) | |
(대표님) 정기평가 대상, 미들웨어 수정, nextauth 토큰 처리 개선, GTC 등
(최겸) 기술영업
Diffstat (limited to 'app/api/revision-upload-ship')
| -rw-r--r-- | app/api/revision-upload-ship/route.ts | 15 |
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}`) |
