congxine笔记
ONLINE
返回科普
KNOWLEDGE / NOTE

Fetch 请求

MDN · 站内原创整理

Fetch 提供基于 Promise 的网络请求接口,响应状态和响应体解析都需要显式处理。

核心说明

Fetch 是浏览器提供的 Promise 风格网络接口。请求完成不代表业务成功,代码仍然需要检查 response.ok、状态码和响应体格式。

关键点

  • 404 或 500 通常不会让 fetch 自动 reject,需要显式判断 response.ok。
  • JSON 解析也是异步步骤,解析失败要进入统一错误处理。
  • 生产请求要考虑超时、取消、重试和重复提交。
const response = await fetch("/api/posts")
if (!response.ok) throw new Error(`HTTP ${response.status}`)
const posts = await response.json()