Aller au contenu

23. Utiliser une API qui existe déjà

Un bloc source décrit une API écrite ailleurs (en Node, PHP, Python…). Les pages s'en servent comme d'un serveur Humalis, avec les mêmes vérifications.

source "boutique" :
    adresse "https://api.exemple.fr"
    enveloppe "data"
    erreur dans "message"
    donnee produit :
        id : texte
        name : texte
        price : nombre
    route "api/products" :
        lire une liste de produit dans "products"
        lire un produit dans "product"

page "catalogue" :
    variable produits = []
    titre "Nouveautés"
    quand la page se charge :
        envoyer requete vers "api/products" de la source "boutique" dans produits
    si produits est en erreur :
        texte erreur de produits
        bouton "Réessayer"
        quand l'utilisateur clique sur "Réessayer" :
            recharger produits
    pour chaque p dans produits :
        lien p.name vers "produit" avec id p.id

page "produit" avec parametre id :
    variable produit = rien
    quand la page se charge :
        envoyer requete vers "api/products" de la source "boutique" avec id dans produit
    si produit est rien :
        texte "Chargement du produit…"
    sinon :
        titre produit.name
        texte "{produit.price en euros}"
  • est en chargement et est en erreur suivent l'état d'une requête vers une source ; recharger produits la relance.

  • enveloppe "data" : la réponse de l'API range ses données sous data.

  • erreur dans "message" : où l'API écrit ses messages d'erreur.

  • session astratra : l'API utilise la connexion des packs Astratra.

  • Une route peut lire, creer, modifier (par remplacement pour un PUT) et supprimer. Un jeton secret ne s'écrit jamais dans le fichier : Humalis le refuse.