Aller au contenu

Appeler des points de terminaison à partir du serveur

Les points de terminaison peuvent être utilisés pour servir de nombreux types de données. Cette recette appelle un point de terminaison du serveur à partir du script de composant d'une page pour afficher un message d'accueil, sans nécessiter de demande de récupération supplémentaire.

Prérequis

  • Un projet avec SSR (output: 'server') activé

Recette

  1. Créer un point de terminaison dans un nouveau fichier src/pages/api/hello.ts qui retourne des données :

    import type { APIRoute } from 'astro'
    
    export const GET: APIRoute = () => {
      return new Response(
        JSON.stringify({
          greeting: 'Hello',
        }),
      )
    }
  2. Sur n'importe quelle page Astro, importez la méthode GET() du point de terminaison. Appelez-la avec l'objet global Astro pour fournir le contexte de la requête, et utilisez la réponse sur la page :

    ---
    import { GET } from './api/hello.ts'
    
    let response = await GET(Astro)
    const data = await response.json()
    ---
    
    <h1>{data.greeting} world!</h1>
Contribuer Communauté Parrainer