fetch() API for HTTP requests.
Basic GET Request
const response = await fetch("https://api.example.com/data");
const data = await response.json();
console.log(data);
POST Request
const response = await fetch("https://api.example.com/users", {
method: "POST",
headers: {
"Content-Type": "application/json",
},
body: JSON.stringify({
name: "John Doe",
email: "[email protected]",
}),
});
const result = await response.json();
Error Handling
try {
const response = await fetch("https://api.example.com/data");
if (!response.ok) {
throw new Error(`HTTP error: ${response.status}`);
}
const data = await response.json();
} catch (error) {
console.error("Fetch failed:", error);
}
Timeout
const controller = new AbortController();
const timeout = setTimeout(() => controller.abort(), 5000);
try {
const response = await fetch("https://api.example.com/data", {
signal: controller.signal,
});
const data = await response.json();
} catch (error) {
if (error.name === "AbortError") {
console.log("Request timeout");
}
} finally {
clearTimeout(timeout);
}