In the past, the separate “experimental” RESTful extension library only compiled with Delphi, as it used anonymous methods.
With version 2.0 / 2.1, the RESTful extension library now also compiles with Free Pascal, where it uses procedural types instead of anonymous methods.
In projects which must be single-source for Delphi and Free Pascal, usage of procedural types can be enforced by defining the symbol DARAJA_RESTFUL_COMPATIBLE.
With the Daraja Framework, writing well organized stand alone HTTP server applications in Object Pascal requires only a few lines of code, and a minimum of installation and project set up steps.
Daraja supports dynamic (run-time) resource organization by context and path mappings
The framework uses the concept of web components for resource generation, which provide distinct handlers for GET, POST (and other) to separate resource building code for all supported HTTP methods.
Daraja provides the core foundation for serving HTTP resources of all content types – such as HTML pages, images, scripts, web service responses etc. – by mapping resource paths to your own code. Your request handler code then can create the response content, or let the framework serve a static file.
- SLF4P (logging framework support): https://github.com/michaelJustin/slf4p
- Internet Direct (Indy): http://indyproject.org/Sockets/index.aspx