核心价值依据客户端 `Accept-Encoding` 选择最优压缩格式(优先 br,再次 gzip)。投递已在 CDN 侧预压缩的变体,避免边缘动态压缩开销。Route Handler 实现export const runtime = 'edge' export async function GET(req: Request) { const enc = req.headers.get('accept-encoding') || '' const useBr = enc.includes('br') const useGzip = enc.includes('gzip') const variant = useBr ? 'br' : useGzip ? 'gz' : 'raw' const url = `https://cdn.example.com/app.css.${variant}` const res = await fetch(url) const headers: Record<string, string> = { 'Content-Type': 'text/css; charset=utf-8', 'Vary': 'Accept-Encoding', 'Cache-Control': 'public, max-age=600, s-maxage=3600', } if (variant === 'br') headers['Content-Encoding'] = 'br' else if (variant === 'gz') headers['Content-Encoding'] = 'gzip' return new Response(res.body, { headers }) } 治理建议仅对稳定文件启用预压缩并在部署时同步生成 `br/gzip` 变体。设置 `Vary: Accept-Encoding`,防止缓存将不同编码混淆。对动态 JSON 响应也可采用变体策略,但需评估缓存一致性与更新频率。结论在 Edge 上进行压缩协商并投递预压缩资源能显著降低体积与首包,配合正确的缓存治理可保持一致性与性能。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部
1.759486s