Web API with Delphi and DMVCFramework
"The perfect course to learn how to develop Web APIs with Delphi in a simple and fast way!"
Course taught by Daniele Teti, author of the official guide and lead developer of DMVCFramework
Duration: 2 days
Price: € 490,00 VAT excluded
Next course on 19 - 20 January 2026
Prerequisites:
Delphi Tokyo or higher
OOP (Object-Oriented Programming)
HTTP knowledge
Description
Accessing business data remotely is no longer optional. Your team needs to access crucial information, even when they are off-site. In this course, you will discover how simple (and efficient) it is to use Delphi to write RESTful/JSON services with DelphiMVCFramework. The course will cover all the key features of DelphiMVCFramework, the framework renowned worldwide for its speed and simplicity. The workshop includes the real development of a complete RESTful server and a JavaScript web client! This is the perfect course for you if you want to learn how to develop Web APIs with Delphi quickly and easily!
Contents
Introduction to DelphiMVCFramework
Why DMVCFramework is the most popular framework on Github? What makes it unique?
Developing Web APIs with Delphi
Controllers
Actions
Action Filters
Routing
URL Mapped Parameters
Strongly Typed Parameters
QueryString parameters
Attributes that make DMVCFramework easy to use
MVCPath
Support for regular expressions in MVCPath
MVCHTTPMethod
MVCProduces
MVCConsumes
MVCDoc
Preparing Responses for the Client
JSON
DataSet
Binary
Text
Stream
HTML
Custom
Functional Actions
Render Methods
Designing a DMVCFramework Application
Designing RESTful Web APIs
Push Notifications and Server Sent Events
Middleware
Basic Authentication
JWT Authentication
Implementing token expiration with the new TMVCJWTBlackListMiddleware
Creating custom authentication and authorization mechanisms
Server Side View
When and how to use Server Side View
Introduction to TemplatePro
Syntax
Usage scenarios
Integration with DMVCFramework
Developing server-side applications and websites with DMVCFramework and TemplatePro
Integration with HTMX
What is HTMX and why is it a great complement for DMVCFramework?
Developing modern web applications with (almost) no JavaScript
Analyzing Performance
TMVCActiveRecord: OOP and relational finally work together!
Persistence and mapping
CRUD
Managing complex merges with TMVCActiveRecord.Merge and UOW
Queries with RQL
Complex queries with SQL
Relationships
Simplifying transactional code with TransactionContext
Dependency Injection with MVCInject
Defining an injectable service
Injecting services into controllers
Injecting services into other services
Best Practices
Sqids: what they are and how to use them effectively in DMVCFramework
MVCSerializeAsSqids attribute
Automatic configuration with .env
How .env works
What DMVCFramework offers
All default configurations recognized by DMVCFramework
How to define specific configurations for different environments (e.g., dev, test, prod)
Using .env in any type of project
Usage Scenarios: From Micro to Macro
RESTful services and/or JSON-RPC
Using the MVCJSONRPCAllowGET attribute to allow JSON-RPC services to leverage caching
Communication 360°: From the same machine to the internet via LAN
Writing Clients
Writing a web client with JavaScript
Writing a mobile client with Delphi
Converting Services
Converting a SOAP service into a RESTful service
Converting a SOAP service into a JSON-RPC service
Analyzing Performance
Profiling with Profiler.Start
Profiling portions of code with Profiler.Trace
Simplifying deserialization of complex and composite data with the new MVCOwned attribute
Best Practices for Accelerating and Optimizing Development with DMVCFramework
