加有效,但须满足三条件:域名出现在首屏后立即请求中、href用双斜杠协议相对写法、标签置于靠前位置;否则浏览器不执行。

直接结论:加 有效,但必须满足三个硬条件:域名出现在首屏后立即发起的请求中、href 用双斜杠协议相对写法、标签放在 靠前位置——否则浏览器根本不会执行。
href 必须写成 //api.example.com,不能带 http:// 或 https://
浏览器在预解析阶段只提取主机名,硬写协议头会导致部分 Safari 版本跳过该标签,HTTPS 页面里写 http:// 更是直接被忽略。协议相对写法让浏览器自动适配当前页协议,避免混合内容警告或降级失败。
- ✅ 正确:
- ❌ 错误:
(Safari 可能无视) - ❌ 错误:
(HTTPS 页面下无效) - ❌ 错误:
(含路径,被完全忽略)
必须放在 里,且要在首个 之前
浏览器流式解析 HTML, 被读到就排队执行;如果它出现在 CSS 或 JS 之后,首屏资源加载已抢占网络和 CPU,预解析大概率被延迟甚至跳过。
- ✅ 推荐顺序:
→→× N → - ❌ 放在
里:绝大多数浏览器不处理,等于没写 - ❌ 用 JS 动态插入:
document.head.appendChild()太晚,失去预解析意义 - ⚠️ 注意:多个
dns-prefetch标签之间无依赖,但浏览器并发上限通常为 6~10 个,别堆满
只对“首屏后立刻发请求”的 API 域名有用,别给备用接口或埋点域名乱加
这个标签不是“越多越好”,而是“越准越好”。浏览器不保证执行,尤其在弱网或内存紧张时会主动丢弃。你得确认:页面 JS 在 DOM ready 后 100ms 内确实调用了 fetch("https://api.example.com/...") 或类似请求。
- ✅ 值得加:
//api.example.com(首页卡片数据)、//auth.example.com(登录态校验) - ❌ 不该加:
//log.example.com(用户行为上报,可延后)、//backup-api.example.com(兜底接口,99% 不触发) - ❌ 别加同主域:
//www.example.com(主站域名浏览器已缓存,纯冗余) - ⚠️ 注意:
//api.example.com和//v2.api.example.com是两个独立 DNS 查询,别漏掉子域
最容易被忽略的一点:DNS 预解析成功 ≠ 请求一定快。如果目标 API 域名开了严格 CORS 且没配 Access-Control-Allow-Origin: *,旧版 Safari 可能跳过预解析;更关键的是,它只解决 DNS 这一环,后续 TCP 握手、TLS 协商、服务端响应仍需时间——真要压榨性能,得配合 ,但那是另一层取舍了。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!











