← 返回渲染测试

按需重新验证 (On-Demand)

🎯 什么是按需重新验证?

使用 revalidatePath()revalidateTag() 手动触发页面重新生成, 适用于内容更新后需要立即刷新的场景(如 CMS 更新、表单提交)。

📊 当前数据

渲染时间:2025-12-17T09:54:09.744Z

点击下面的按钮触发重新验证,然后刷新页面查看新时间

🔄 触发重新验证

点击后,下一次访问此页面时会看到新的渲染时间

💻 代码示例

// app/api/revalidate/route.ts
import { revalidatePath, revalidateTag } from 'next/cache';
import { NextRequest } from 'next/server';

export async function POST(request: NextRequest) {
  const path = request.nextUrl.searchParams.get('path');
  
  if (path) {
    revalidatePath(path); // 重新验证路径
    return Response.json({ revalidated: true });
  }
  
  return Response.json({ revalidated: false });
}

// 使用示例
await fetch('http://localhost:3000/api/revalidate?path=/blog/post-1', {
  method: 'POST',
});