fetch() 是 JavaScript 中用于发送网络请求的 API,它可以用于获取数据和向服务器发送数据。下面是 fetch() 的基本用法。
发送 GET 请求
发送 GET 请求时,需要指定请求的 URL 和请求方法。
fetch('https://example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error))
上面的代码会发送一个 GET 请求到 https://example.com/data,并将响应转换为 JSON 格式,然后将响应数据输出到控制台。
发送 POST 请求
发送 POST 请求时,需要指定请求的 URL、请求方法和请求体。
fetch('https://example.com/data', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify({ key: 'value' })
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error(error))
上面的代码会发送一个 POST 请求到 https://example.com/data,并将请求体设为 { key: 'value' },同时指定请求头的 Content-Type 为 application/json。然后将响应转换为 JSON 格式,然后将响应数据输出到控制台。
错误处理
fetch() 返回的是一个 Promise 对象,可以使用 then() 和 catch() 方法进行响应处理和错误处理。如果请求失败或响应状态码不是 2xx,则会触发 catch() 方法。
fetch('https://example.com/data')
.then(response => {
if (!response.ok) {
throw new Error(response.statusText)
}
return response.json()
})
.then(data => console.log(data))
.catch(error => console.error(error))
上面的代码会发送一个 GET 请求到 https://example.com/data,如果响应状态码不是 2xx,则会抛出一个错误,然后将错误输出到控制台。
以上就是 fetch() 的基本用法介绍。更多详细的用法请参考 MDN 文档。