Daten abrufen
.astro
-Dateien können Daten aus der Ferne abrufen, um dir bei der Erstellung deiner Seiten zu helfen.
fetch()
in Astro
Abschnitt betitelt fetch() in AstroAlle Astro-Komponenten haben Zugriff auf die globale Funktion fetch()
in ihrem Komponentenskript, um HTTP-Anfragen an APIs unter Verwendung der vollständigen URL (z. B. https://example.com/api) zu stellen.
Außerdem kannst du mit new URL("/api", Astro.url)
eine URL zu den Seiten und Endpunkten deines Projekts konstruieren, die bei Bedarf auf dem Server gerendert werden.
Dieser Fetch-Aufruf wird zur Erstellungszeit ausgeführt, und die Daten stehen der Komponentenvorlage für die Erzeugung von dynamischem HTML zur Verfügung. Wenn der Modus SSR (EN) aktiviert ist, werden alle Fetch-Aufrufe zur Laufzeit ausgeführt.
💡 Nutze die Vorteile von Top-Level Await in deinem Astro-Komponentenskript.
💡 Übergib die abgerufenen Daten als Eigenschaften an Astro- als auch an Framework-Komponenten.
Beachte, dass alle Daten in Astro-Komponenten zum Render-Zeitpunkt der Komponente abgerufen werden.
Deine veröffentlichte Astro-Website ruft Daten einmalig während des Erstellungsvorgangs ab. Während der Entwicklung wirst du aber bei jeder Komponentenaktualisierung einen Datenabruf sehen. Wenn du einen mehrfachen clientseitigen Datenabruf benötigst, nutze eine Framework-Komponente oder ein clientseitiges Skript in einer Astro-Komponente.
fetch()
in Framework-Komponenten
Abschnitt betitelt fetch() in Framework-KomponentenDie fetch()
-Funktion ist auch global in jeder Framework-Komponente verfügbar:
GraphQL-Abfragen
Abschnitt betitelt GraphQL-AbfragenAstro kann auch fetch()
nutzen, um GraphQL-Server mit einer beliebigen gültigen GraphQL-Anfrage anzufragen.
Abfragen von einem Headless-CMS
Abschnitt betitelt Abfragen von einem Headless-CMSAstro-Komponenten können Daten aus deinem bevorzugten CMS abrufen und sie dann als Seiteninhalt wiedergeben. Mit dynamischen Routen können die Komponenten sogar Seiten auf der Grundlage deiner CMS-Inhalte erstellen.
In unseren CMS Guides findest du alle Details zur Integration von Astro in Headless CMS wie Storyblok, Contentful und WordPress.