核心价值`stale-while-revalidate` 允许在过期后短期使用陈旧副本并后台更新,提升响应速度。`immutable` 适用于带指纹的静态资源,确保长时间缓存并避免不必要的再验证。API 响应治理export const runtime = 'edge' export async function GET() { const body = JSON.stringify({ list: [1, 2, 3], ts: Date.now() }) return new Response(body, { headers: { 'Content-Type': 'application/json; charset=utf-8', 'Cache-Control': 'public, max-age=60, stale-while-revalidate=300', }, }) } 指纹静态资源治理export const runtime = 'edge' export async function GET() { const buf = await fetch('https://cdn.example.com/app.abc123.css').then(r => r.arrayBuffer()) return new Response(buf, { headers: { 'Content-Type': 'text/css; charset=utf-8', 'Cache-Control': 'public, max-age=31536000, immutable', }, }) } 治理建议`stale-while-revalidate` 时段不宜过长,避免陈旧数据影响一致性;结合条件请求(ETag/Last-Modified)提升新鲜度协商效率。只有指纹化资源(内容变更会更换文件名)适合使用 `immutable`,避免对非指纹资源误用导致用户拿到过期内容。结论在 Next.js 15 的 Edge Route Handlers 中通过精细化的 Cache-Control 策略,可在保证数据一致性的同时显著提升性能与带宽利用率。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
1.712397s