Darajaは、無料のオープンソースライブラリインターネットダイレクト(Indy)の非視覚的なHTTPサーバーコンポーネントに基づいた、オブジェクトPascalの柔軟なHTTPサーバーフレームワークです。
Darajaは、リソースパスを独自のコードにマッピングすることにより、HTMLページ、画像、スクリプト、Webサービス応答など、すべてのコンテンツタイプのHTTPリソースを提供するためのコア基盤を提供します。その後、コードは応答コンテンツを作成したり、フレームワークに静的ファイルを提供したりできます。
含まれているプロジェクトには、OAUTH 2.0やMicrosoft Entra IDやGoogle Identityプラットフォーム用のOpenID Connectなど、高度な用途のケースに対する有用性が示されています。
http://michaeljustin.github.io/daraja-framework/
getting startドキュメント(PDF)は、https://www.habarisoft.com/daraja_framework/3.0-ms1/docs/darajaframeworkgettingstarted.pdfで入手できます
詳細については、https://www.habarisoft.com/daraja_framework.htmlをご覧ください。
例:
<daraja-home>source;<indy-home>LibCore;<indy-home>LibProtocols;<indy-home>LibSystem
リソースハンドラーは、特定のクライアントリクエストに一致するHTTP応答の生成を担当します。実際のHTTP要求とリソースハンドラーの間のルーティングは、「マッピング」ルールで定義されます。たとえば、リソースハンドラーは、絶対パスマッピングで/context1/index.htmlにマッピングできます。
Context1.Add(TIndexPageResource, ' /index.html ' );他にもサポートされているマッピングタイプが2つあります。プレフィックスマッピング( '/ sub1/ '、 '/ sub2/ ' ...)とサフィックスマッピング( ' .html'、 ' .pdf' ...)。すべてのマッピングは、責任あるリソースハンドラーを見つけるために定義された順序でチェックされます。
リソースハンドラーに加えて、アプリケーションにはリソースフィルターも含まれる場合があります。フィルターを使用すると、次のような多くの方法でHTTPトラフィックを変更できます。
すべてのマッピングタイプは、リソースフィルターにも使用できます。