Request Mapping in Symfony 7
Wer in Symfony-Controllern noch manuell $request->query->get() und json_decode($request->getContent()) schreibt, verschenkt Typsicherheit und Validierung. MapQueryString und MapRequestPayload mappen Query-Parameter und Request-Body seit Symfony 6.3 direkt in typisierte DTOs — automatisch deserialisiert, validiert und einsatzbereit.
Inhaltsverzeichnis
- 1. Das Problem: Request-Daten manuell extrahieren
- 2. MapQueryString: Query-Parameter direkt in DTOs
- 3. MapRequestPayload: JSON-Body typsicher mappen
- 4. DTOs mit PHP 8.4 Constructor Promotion
- 5. Validierung mit Symfony Constraints
- 6. Fehlerbehandlung und HTTP-Antworten
- 7. Verschachtelte DTOs und Collections
- 8. Unterschiedliche Formate: JSON, Form-Data, XML
- 9. Vergleich: Vorher und nachher
- 10. Zusammenfassung
- 11. FAQ