Routes, Contrôleurs dans le FrameWork Symfony 3
Le paramètre spécial _format permet-il au contrôleur de fournir un même contenu dans différents formats?
Oui. HTLM, XML, JSON, RSS etc...
Par défaut que vaut le paramètre spécial _locale?
'en'
Pour English
Que doit-on respecter pour définir le nom d'un paramètre de route?
{nom_du_paramètre}
Le nom du paramètre doit
Quelle est l'utilité du paramère spécial _fragment?
Définit la dernière partie d'une URL, celle qui commence par # et permet d'atteindre une partie d'un document.
Quelles sont les 3 manières d'appeler un contrôleur?
Peut-on configurer nos routes avec les annotations et les fichiers de configuration de route en même temps?
Oui
Pourquoi dit-on que le sytème de Routing est bidirectionnel?
Car il nous permet d'aller
Que se passe-t-il si on ajoute un paramètre avec sa valeur, en plus de ceux définis dans la route?
On génére alors une URL avec un paramètre de requête.
http://www.monsite.com/?paramètre=valeur
Lors de la génération d'URL absolue dans un contrôleur, quelle interface et constante doit-on utiliser?
UrlGeneratorInterface::ABSOLUTE_URL
Qui ajoute la valeur de la requête dans la signature suivante?
C'est le Kernel qui donne la valeur de la requête avant de lancer l'action de contrôleur que le routeur lui a désigné.
Les deux classes Request et Response existent-elles dans Symfony?
Oui
Quels sont les 3 éléments qui permettent de construire une réponse?
Dans le navigateur Web où peut-on voir l'entête HTTP de la Requête et de la Réponse?
La signature d'une méthode de contrôleur nous permet-elle de récupérer les paramètres d'une route?
Oui, la variable $id ci-dessous a été définie dans la route et peut être utilisée dans la méthode indexAction.
Qu'est ce qu'une action de contrôleur?
C'est une fonction PHP que l'on crée qui lie les informations venant d'un objet Request de Symfony et qui crée et retourne un objet Response.
Quelle genre de Réponse un contrôleur peut-il renvoyer?
En général une action de contrôleur est une méthode à l'intèrieur d'une classe contrôleur, mais que peut-elle être aussi?
Les méthodes fondamentales de Symfony appellées CORE METHODES en Anglais, sont-elles disponibles?
Oui
Que le contrôleur étende ou pas le contrôleur de base de Symfony.
Que faut-il faire pour pouvoir accéder aux méthodes raccourcies que l'on appèlle SHORTCUT METHODS en Anglais?
Le contrôleur doit étendre le contrôleur de base de Symfony.
Comment récupérer le paramètre hors route tag?
Comment récupérer les paramètres d'une URL passés en GET?
Comment récupérer les paramètres d'une URL passés en POST?
Comment récupérer les variables de cookie?
Comment récupérer les variables de serveur?
Comment récupérer les variables d'en-tête?
On récupère normalement un paramètre de route dans la signature de la méthode.Mais comment peut-on le récupèrer avec une instance de l'objet Request?
Si on utilise les méthodes suivantes d'une instance de l'objet Request, doit-on tester l'existence des paramètres?
Non
Si les paramètres ne sont pas définis cela retournera une chaine vide.
Comment savoir si la requête à été envoyée en GET ou POST?
Comment s'appel en Français et en Anglais la partie 'Request' de la signature suivante?
Comment savoir si la requête envoyée est une requête AJAX?
Quelle est la méthode raccourcie pour renvoyer une réponse avec vue?
$this->render('B:R:T', array('paramètre' => 'valeur'))
Comment renvoyer une réponse avec vue en utilisant le service templating?
$this->get('templating')->renderResponse('B:R:T', array('paramètre' => 'valeur')
Comment créer, constituer et envoyer une réponse avec une instance de Response?
Une redirection est-ce une réponse HTTP?
Oui
Quelle est l'utilité de la classe RedirectResponse?
La classe RedirectResponse étend Response et ajoute l'entête HTTP Location pour informer le navigateur qu'il sagit d'une redirection.
Comment rediriger avec une méthode raccourcie qui utilise une URL en argument?
ATTENTION: il n'y a pas de validation d'URL dans ce cas et l'application devient vunérable aux attaques de redirection d'URL non validée.
Comment rediriger avec une méthode raccourcie qui utilise une Route en argument?
Que faut-il changer dans le fichier app/config/config_dev.yml pour pourvoir intercepter les redirections?
Mettre
intercept_redirect
à true
Pourquoi intercepter une redirection avec Symfony?
Pour connaître, par exemple, la valeur des données récupérées par nos requêtes SQL avant d'aller vers la redirection.
Quelle méthode raccourcie utiliser pour retourner simplement un contenu en JSON?
return $this->json(Contenu A Transformer En JSON)
Quelle classe instancier pour retourner un contenu en JSON?
'Content-Type' est mis à 'application/json' automatiquement
Complétez la ligne 2
L'Entête doit être fixé car le contenu retourné est du JSON
La session s'obtient à partir de la requête, il faut donc ajouter dans la signature (Request $request)
Comment connaître les variables de la session courante?
Comment s'appelle les messages qui sont définis dans des variables de session et qui ne durent que le temps de la page?
Les messages flash
Comment ajouter un message flash 'hello' dans une variable de session 'message'?
ou avec une méthode raccourcie
Comment afficher un message flash que l'on à définit dans notre contrôleur dans la variable de session 'error'?
flashMessage peut-être remplacé par n'importe quel autre mot
Sur quelle touche de clavier appuyer pour faire disparaître un message flash?
F5
La variable globale Twig {{ app }} est-elle disponible partout dans nos templates?
Oui
Dans un contrôleur qui hérite de NotFoundHttpException, comment déclencher une exception qui affichera une page d'erreur 404 'Not Found'
Le kernel attrape l'exception lancée et contruit une page d'erreur 404