Daraja是基于免费开源库Internet Direct(Indy)中的非视觉HTTP服务器组件,是对Object Pascal的灵活的HTTP服务器框架。
Daraja提供了为所有内容类型提供HTTP资源(例如HTML页面,图像,脚本,Web服务响应等)的核心基础。通过将资源路径映射到您自己的代码。然后,您的代码可以创建响应内容,或者让框架提供静态文件。
随附的示例项目显示了其对高级用途案例的有用性,例如OAuth 2.0和Microsoft Entra ID和Google Identity平台的OpenID Connect。
http://michaeljustin.github.io/daraja-framework/
可以在https://www.habarisoft.com/daraja_framework/3.0-MS1/docs/darajaframewramewramewrameworkgettingstarted.pdf上找到入门文档(PDF)(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 ' );还有另外两种支持的映射类型:前缀映射('/ sub1/ ','/ sub2/ '...)和后缀映射(' .html',' .pdf'...)。所有映射均以定义的顺序检查以找到负责任的资源处理程序。
除了资源处理程序外,该应用程序还可以包括资源过滤器。使用过滤器,可以通过多种方式修改HTTP流量,例如:
所有映射类型也可以用于资源过滤器。