Daraja ist ein flexibles HTTP-Server-Framework für Object Pascal, basierend auf der nicht-visuellen HTTP-Serverkomponente in der kostenlosen Open Source Library Internet Direct (INDY).
Daraja bietet die Kernfundierung für die Bereitstellung von HTTP-Ressourcen aller Inhaltstypen wie HTML-Seiten, Bilder, Skripten, Webdienstantworten usw., indem Ressourcenpfade auf Ihren eigenen Code abgebildet werden. Ihr Code kann dann den Antwortinhalt erstellen oder das Framework eine statische Datei bedienen lassen.
Eingeschlossene Beispiele für Projekte zeigen den Nutzen für den erweiterten Verwendungsfall wie OAuth 2.0 und OpenID Connect für die Microsoft Entra ID und die Google Identity Platform.
http://michaeljustin.github.io/daraja-framework/
Ein Erste-Start-Dokument (PDF) ist unter https://www.habarisoft.com/daraja_framework/3.0-ms1/docs/darajaframeworkgettingstarted.pdf verfügbar
Besuchen Sie https://www.habarisoft.com/daraja_framework.html für weitere Informationen.
Beispiel:
<daraja-home>source;<indy-home>LibCore;<indy-home>LibProtocols;<indy-home>LibSystem
Ein Ressourcenhandler ist für die Erzeugung der HTTP -Antwort verantwortlich, die einer bestimmten Client -Anforderung entspricht. Das Routing zwischen der tatsächlichen HTTP -Anforderung und dem Ressourcenhandler wird durch "Zuordnen" -Regeln definiert. Beispielsweise könnte ein Ressourcenhandler auf /context1/index.html mit einer absoluten Pfadzuordnung abgebildet werden:
Context1.Add(TIndexPageResource, ' /index.html ' );Es gibt zwei weitere unterstützte Zuordnungstypen: Präfix -Mapping ('/ sub1/ ', '/ sub2/ ' ...) und Suffix Mapping (' .html', ' .pdf' ...). Alle Zuordnungen werden in einer definierten Reihenfolge überprüft, um den zuständigen Ressourcenhandler zu finden.
Zusätzlich zu Ressourcenhandlern kann die Anwendung auch Ressourcenfilter enthalten. Bei Filtern kann der HTTP -Verkehr in vielerlei Hinsicht geändert werden, wie z. B.:
Alle Mapping -Typen können auch für Ressourcenfilter verwendet werden.