55 lines
1.8 KiB
HTML
55 lines
1.8 KiB
HTML
<!doctype html>
|
||
<html lang="de">
|
||
<head>
|
||
<meta charset="UTF-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>Übung 23: Fetch API – Einfache Datenabfrage</title>
|
||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.8/dist/css/bootstrap.min.css" rel="stylesheet" />
|
||
</head>
|
||
<body>
|
||
<main>
|
||
<div class="container py-5">
|
||
<div class="alert alert-primary">
|
||
<h2>Übung 23: Fetch API – Einfache Datenabfrage</h2>
|
||
<p>
|
||
Erstelle eine Funktion <code>fetchUsers</code>, die mithilfe der Fetch API eine Liste von Benutzern von der
|
||
DummyJSON-API abruft. Verwende async/await und try/catch, um Netzwerkfehler abzufangen. Die abgerufenen
|
||
Daten sollen dann in der Konsole ausgegeben werden.
|
||
</p>
|
||
<p>
|
||
<strong>Hinweis:</strong> Verwende die URL
|
||
<a href="https://dummyjson.com/users">https://dummyjson.com/users</a> für den Fetch-Aufruf.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</main>
|
||
<script>
|
||
'use strict';
|
||
|
||
// async function fetchUsers() {
|
||
const fetchUsers = async () => {
|
||
try {
|
||
const response = await fetch('https://dummyjson.com/users');
|
||
|
||
if (!response.ok) {
|
||
throw new Error(`HTTP-Fehler: ${response.status}`);
|
||
}
|
||
|
||
const data = await response.json(); // HTTP-Response Body
|
||
// console.log(data.users);
|
||
return data;
|
||
} catch (error) {
|
||
console.error('Benutzer konnten nicht geladen werden:', error);
|
||
}
|
||
};
|
||
|
||
fetchUsers().then((data) => {
|
||
data.users.forEach((user) => {
|
||
const { firstName = '', lastName = '', age } = user;
|
||
console.log(`name: ${firstName}, lastname: ${lastName}, age: ${age}\n`);
|
||
});
|
||
});
|
||
</script>
|
||
</body>
|
||
</html>
|