21. Le serveur
Un bloc serveur décrit les données de l'application et qui a le droit de faire quoi. Humalis en produit un vrai serveur Node, avec la connexion, les sessions et la sécurité des packs Astratra.
serveur "bibliotheque" :
donnee livre :
titre : texte
pages : nombre
disponible : booleen
parution : date
auteurs : liste de texte
donnee avis :
note : nombre
commentaire : texte
route "livres" :
tout le monde peut lire livre
seul admin peut modifier livre
route "avis" :
tout le monde peut lire avis
connecte peut creer avis
seul admin peut supprimer avisdonneedécrit une sorte de donnée et ses champs :texte,nombre,booleen,date,liste de ….routedonne une adresse (/api/livres) et ses règles.Les droits :
tout le monde,connecte,seul admin; les actions :lire,creer,modifier,supprimer(modifierseul couvre créer, modifier et supprimer).Une action sans règle est refusée à tout le monde. Humalis prévient quand une donnée n'est accessible à personne.
Pour le produire et le lancer :
humalis compile mon-projet.humalis --cible serveur --sortie mon-projet-serveur
cd mon-projet-serveur && npm install
cp .env.exemple .env # puis remplir JWT_SECRET et l'administrateur
npm test # vérifie chaque règle d'accès
npm run build && npm startSans DATABASE_URL dans le .env, les données restent en mémoire (développement). Avec, elles vont dans PostgreSQL : une table par donnée, créée au démarrage.