import { NextRequest, NextResponse } from 'next/server'; import { revalidateTag } from 'next/cache'; // 캐시 태그 수동 무효화 — Admin/운영에서 config·market·stock 데이터 변경 후 즉시 반영용. // 사용: POST /api/revalidate?tag=site-config&secret=XXX (secret = 환경변수 REVALIDATE_SECRET) // 태그: 'site-config'(설정/메뉴) · 'market-data'(시장 T+1) · 'stock-data'(종목 T+1) // REVALIDATE_SECRET 미설정 시 항상 401 (안전 기본값) — 설정 전엔 revalidate 주기(초)로만 갱신. export async function POST(request: NextRequest) { const secret = request.nextUrl.searchParams.get('secret'); if (!process.env.REVALIDATE_SECRET || secret !== process.env.REVALIDATE_SECRET) { return NextResponse.json({ success: false, message: 'unauthorized' }, { status: 401 }); } const tag = request.nextUrl.searchParams.get('tag'); if (!tag) { return NextResponse.json({ success: false, message: 'tag required' }, { status: 400 }); } revalidateTag(tag); return NextResponse.json({ success: true, tag }); }