Junior
Wo ist es am besten, Anfragen an das Backend zu stellen?
sobes.tech KI
Antwort von AI
Anfragen an das Backend sollten am besten mit asynchronen Methoden im Code durchgeführt werden:
-
Auf der Client-Seite (im Browser):
- Mit der API
fetchoder einer Bibliothek wieAxios. - Geeignet für interaktive Aktionen des Nutzers, dynamisches Laden von Daten, Absenden von Formularen.
- Ermöglicht die Erstellung von SPA (Single Page Applications).
- Wird in JavaScript/TypeScript implementiert.
// Beispiel mit fetch async function fetchData() { try { const response = await fetch('/api/data'); if (!response.ok) { throw new Error(`HTTP-Fehler! Status: ${response.status}`); } const data = await response.json(); console.log(data); } catch (error) { console.error('Fehler beim Abrufen der Daten:', error); } } - Mit der API
-
Auf der Serverseite (z.B. bei Verwendung von SSR/SSG-Frameworks):
- In Frameworks wie Next.js oder Nuxt.js (für React bzw. Vue).
- Daten können während des Builds (SSG) oder bei jeder Anfrage (SSR) abgerufen werden.
- Verbessert SEO und Leistung (weniger "leerer Bildschirm"), da die Seite mit Daten gerendert wird.
- Vermeidet CORS-Probleme.
- Beispiele für Methoden in Next.js:
getStaticProps,getServerSideProps.
// Beispiel mit Next.js (getServerSideProps) export async function getServerSideProps(context) { const res = await fetch('https://api.example.com/data'); const data = await res.json(); if (!data) { return { notFound: true, // Zeigt 404-Seite an }; } return { props: { data }, // Übergibt Daten als Props an die Seitenkomponente }; }
Die Wahl hängt von der erforderlichen Interaktivität, SEO-Bedürfnissen, Art der Anwendung (SPA, MPA) und dem verwendeten Framework ab. Oft werden diese Ansätze kombiniert.