Daraja est un framework de serveur HTTP flexible pour Object Pascal, basé sur le composant de serveur HTTP non visuel dans la bibliothèque Open Source gratuite Internet Direct (INDY).
Daraja fournit la base principale pour servir les ressources HTTP de tous les types de contenu tels que les pages HTML, les images, les scripts, les réponses du service Web, etc. en mappant des chemins de ressources vers votre propre code. Votre code peut ensuite créer le contenu de réponse ou laisser le framework servir un fichier statique.
Des exemples de projets inclus montrent son utilité pour un cas d'utilisation avancée, tels que OAuth 2.0 et OpenID Connect pour Microsoft Entra ID et Google Identity Platform.
http://michaeljustin.github.io/daraja-framework/
Un document de démarrage (PDF) est disponible sur https://www.habarisoft.com/daraja_framework/3.0-ms1/docs/darajaframeworkGettingStarted.pdf
Visitez https://www.habarisoft.com/daraja_framework.html pour plus d'informations.
Exemple:
<daraja-home>source;<indy-home>LibCore;<indy-home>LibProtocols;<indy-home>LibSystem
Un gestionnaire de ressources est responsable de la génération de la réponse HTTP correspondant à une demande client spécifique. Le routage entre la demande HTTP réelle et le gestionnaire de ressources est défini par les règles de «mappage». Par exemple, un gestionnaire de ressources peut être mappé sur /context1/index.html avec un mappage de chemin absolu :
Context1.Add(TIndexPageResource, ' /index.html ' );Il existe deux autres types de mappage pris en charge: le mappage préfixe ('/ sub1 / ', '/ sub2 / ' ...) et le mappage du suffixe (' .html', ' .pdf' ...). Tous les mappages sont vérifiés dans un ordre défini pour trouver le gestionnaire de ressources responsable.
En plus des gestionnaires de ressources, l'application peut également inclure des filtres de ressources. Avec les filtres, le trafic HTTP peut être modifié de plusieurs manières, comme:
Tous les types de cartographie peuvent également être utilisés pour les filtres de ressources.