fetch()发起get请求返回promise,需用.json()等方法解析response对象,须手动检查response.ok并用catch捕获网络错误,credentials需显式设置。

直接调用 fetch() 函数,传入 URL 字符串即可发起基础 GET 请求。它返回一个 Promise,需用 then() 或 async/await 处理响应。
基本语法与响应处理
Fetch 默认就是 GET 请求,不需要额外指定方法。但要注意:返回的不是数据本身,而是 Response 对象,必须调用 .json()、.text() 等方法才能读取内容。
Java项目代码review工具。分析Git变更+完整调用链路上下文,推断业务需求,进行多维度评分和分类汇总,生成完整PRD文档。包含细粒度Java代码审查清单(Null安全、异常处理、Streams、并发、equals/hashCode、资源管理、API设计、性能、MyBatis/ORM、事务边界、SQL/DD...
-
fetch('https://api.example.com/data')发起请求 -
.then(res => res.json())解析 JSON 响应(常见于 API) -
.then(data => console.log(data))获取最终数据 - 记得用
.catch()捕获网络错误(如离线、域名不可达)
完整示例(Promise 风格)
以下代码获取用户列表并打印 ID 和姓名:
fetch('https://jsonplaceholder.typicode.com/users')
.then(response => {
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
return response.json();
})
.then(users => {
users.forEach(user => console.log(`${user.id}: ${user.name}`));
})
.catch(err => console.error('请求失败:', err));
使用 async/await 更简洁
配合 async 函数,逻辑更接近同步写法,也更容易处理错误:
async function fetchUsers() {
try {
const response = await fetch('https://jsonplaceholder.typicode.com/users');
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const users = await response.json();
return users;
} catch (err) {
console.error('加载用户失败:', err);
}
}
注意几个关键点
- Fetch 不会因 HTTP 状态码(如 404、500)自动 reject,需手动检查
response.ok或response.status - 网络异常(如断网、跨域拒绝)才会触发
catch - 默认不带 Cookie,如需发送凭证,加选项:
fetch(url, { credentials: 'include' }) - 请求头无法设置
Origin或Referer等受控字段,这是浏览器安全限制
大量免费API接口:立即使用
涵盖生活服务API、金融科技API、企业工商API、等相关的API接口服务。免费API接口可安全、合规地连接上下游,为数据API应用能力赋能!










