Verbes Verbesdes routes
Vous le savez peut-être, une requête
HTTP dispose d’une méthode de transmission des
paramètres appelé verbe.
Par exemple, une requête directement
exécutée sur un navigateur possède le verbe GET. GET
Une requête appelée via
la soumission d’un formulaire possède généralement le
verbe POST. POST
Il est possible de préciser cette
méthode dans l’annotation de la route (par défaut, c’est
la méthode GET qui est
choisie) :
/**
* @Route("/test", name="test", methods={"GET","POST"})
*/
public function index(Request $request)
{
...
}
Ici, par exemple, on autorise la route /test à être
exécutée soit avec la méthode GET, soit avec la méthode POST.
Le fait de préciser le verbe de la
route permet un meilleur contrôle de la requête utilisée
et peut éviter certaines failles de sécurité.
Par exemple, une action qui récupère
des données via l’objet $request avec la
méthode query (exemple : $request->query->get(’info’))
doit avoir une route définie avec la méthode ...