Fetching de datos
Los archivos .astro
pueden obtener datos remotos para ayudarte a generar tus páginas.
fetch()
en Astro
Todos los componentes de Astro tienen acceso a la función global fetch()
en su script de componente para hacer peticiones HTTP a APIs usando la URL completa (p.ej. https://example.com/api o Astro.url + "/api"
).
Esta llamada a fetch será ejecutada en el momento de la compilación, y los datos estarán disponibles para la plantilla del componente para generar HTML dinámico. Si el modo SSR está habilitado, cualquier llamada a fetch será ejecutada en tiempo de ejecución.
💡 Aprovecha el top-level await dentro del script del componente de Astro.
💡 Puedes pasar los datos obtenidos a los componentes de Astro u otros UI frameworks como props.
Recuerda, todos los datos en los componentes de Astro se obtienen cuando se renderiza el componente.
Cuando tu proyecto de Astro es desplegado obtendrá los datos una vez, en el momento de la compilación. En desarrollo, verás el fetching de datos al actualizar los componentes. Si necesitas hacer fetching datos varias veces del lado del cliente, usa un componente de framework o un script del lado del cliente en el componente de Astro.
fetch()
en componentes de framework
La función fetch()
también está disponible globalmente para cualquier componente de framework:
Consultas en GraphQL
Astro también puede usar fetch()
para consultar a un servidor GraphQL con cualquier query de GraphQL válida.
Fetching de datos desde un Headless CMS
Los componentes de Astro pueden obtener datos desde tu CMS favorito y luego renderizarlos como contenido en tu página. Usando rutas dinámicas, los componentes pueden generar páginas basadas en el contenido obtenido del CMS.
Ve nuestras guías de CMS para obtener más detalles sobre cómo integrar Astro con un headless CMS incluyendo Stroyblok, Contentful y WordPress.