2016-05-24 8 views
0

Ich möchte Deserialized Entity vor Controller-Aktion mit Param-Konverter validieren.JMS Serializer abfangen Validierung vor Controller-Aktion

Anstatt Contraintvalidierung in den Controller zu injizieren, möchte ich 400 und Fehler zurückgeben, bevor die Controlleraktion ausgeführt wird.

Wie kann ich FOSREST paramconverter abfangen?

Antwort

1

Der fos_rest.request_body Konverter setzt nur Werte aus dem Anfragetext, wenn sie in der Entität vorhanden sind. Sie können Ihre eigene ParamConverter-Klasse erstellen, um die Erstellung eines Post aus der Anfrage zu behandeln.

In dieser Klasse können Sie Ausnahmen auslösen, die den Fluss anhalten würden, bevor der Controller erreicht wird.

Hier ist der Symfony Dokumentation auf ParamConverters:

http://symfony.com/doc/current/bundles/SensioFrameworkExtraBundle/annotations/converters.html#creating-a-converter

Verwandte Themen