From 5b206949dd21e072d0fb929eb7e81fd30105be63 Mon Sep 17 00:00:00 2001 From: Bertrand Benjamin Date: Fri, 13 Jan 2023 15:14:16 +0100 Subject: [PATCH] Feat(1NSI): requete POST et serveur bottle --- .../exercises.tex | 76 +++++++++++++++++- .../plan_de_travail.pdf | Bin 42157 -> 52119 bytes .../scripts/bottle_get_form.py | 9 +++ .../scripts/bottle_post_form.py | 6 ++ .../scripts/bottle_template_app.py | 7 ++ .../scripts/modele_base.html | 12 +++ 6 files changed, 107 insertions(+), 3 deletions(-) create mode 100644 1NSI/05_Interaction_client-serveur/scripts/bottle_get_form.py create mode 100644 1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py create mode 100644 1NSI/05_Interaction_client-serveur/scripts/bottle_template_app.py create mode 100644 1NSI/05_Interaction_client-serveur/scripts/modele_base.html diff --git a/1NSI/05_Interaction_client-serveur/exercises.tex b/1NSI/05_Interaction_client-serveur/exercises.tex index bfd0eff..f172d4e 100644 --- a/1NSI/05_Interaction_client-serveur/exercises.tex +++ b/1NSI/05_Interaction_client-serveur/exercises.tex @@ -16,7 +16,7 @@ \end{exercise} -\begin{exercise}[subtitle={Faire son serveur web avec Bottle}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] +\begin{exercise}[subtitle={Application web avec Bottle - requête GET}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] Dans cette partie, vous allez programmer une application web en utilisant la librairie python \texttt{bottle}. Vous trouverez la documentation (en anglais) à l'adresse suivante \begin{center} \url{https://bottlepy.org/docs/dev/tutorial.html} @@ -31,6 +31,7 @@ \inputminted[bgcolor=base3,linenos]{python}{./scripts/bottle_base.py} \end{minipage} \end{center} + \label{bottle_base} \item Exécuter votre programme puis rendez-vous avec le navigateur à l'adresse @@ -75,11 +76,11 @@ \item Pour le moment, le code renvoyé par notre application n'est pas du code HTML valide. Il est possible d'écrire des modèles (template en anglais) dans lesquels on va pouvoir injecter des variables python pour les rendre modulables. - À côté du fichier de votre application, créer un dossier \texttt{views/} puis un fichier \texttt{utilisateur.html} dans lequel vous mettrait le code HTML suivant + À côté du fichier de votre application, créer un fichier \texttt{utilisateur.html} dans lequel vous mettrait le code HTML suivant \begin{center} \begin{minipage}{0.9\linewidth} - \inputminted[bgcolor=base3,linenos]{python}{./scripts/utilisateur.html} + \inputminted[bgcolor=base3,linenos]{html}{./scripts/utilisateur.html} \end{minipage} \end{center} @@ -100,3 +101,72 @@ \end{enumerate} \end{exercise} + +\begin{exercise}[subtitle={Application web avec Bottle - requête POST}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] + Les requêtes POST envoient des informations au serveur. Ces informations sont le plus souvent envoyé à partir d'une formulaire HTML. + + On reprend le code de la question \ref{bottle_base} de l'exercice précédent. Puis on ajoute à côté du script de notre application, le modèle suivant: + + \begin{center} + \begin{minipage}{0.9\linewidth} + \inputminted[bgcolor=base3,linenos]{html}{./scripts/modele_base.html} + \end{minipage} + \end{center} + Ce modèle permettra d'avoir une structure HTML propre. Il n'y aura plus qu'à passer le contenu du body. + + \begin{enumerate} + \item Supprimer la route \texttt{hello} et ajouter la route suivante + + \begin{center} + \begin{minipage}{0.9\linewidth} + \inputminted[bgcolor=base3,linenos]{python}{./scripts/bottle_get_form.py} + \end{minipage} + \end{center} + \item Quelle URL doit-on entrer dans le navigateur pour accéder à ce formulaire? Envoyez un nom et étudier la requête. + \item On ajoute maintenant la route suivante du type POST pour réceptionner cette requête. Mais avant cela, vous devez ajouter la fonction \texttt{post} dans les imports. + + \begin{center} + \begin{minipage}{0.9\linewidth} + \inputminted[bgcolor=base3,linenos]{python}{./scripts/bottle_post_form.py} + \end{minipage} + \end{center} + + \item Remplissez le formulaire, envoyez le et étudier les requêtes. + \item \textbf{Bilan sur les formulaires et les requêtes post}: + \begin{enumerate} + \item Identifier les nouvelles balises HTML utiles pour créer un formulaire. + \item Chercher sur internet d'autres type possible pour la balise \texttt{input}. + \item Comment \texttt{bottle} fait pour accéder au information du formulaire lors une requête POST? + \item Quelles sont les différences entre transmettre une information avec une requête POST et l'utilisation des query? + \end{enumerate} + \end{enumerate} +\end{exercise} + +\begin{exercise}[subtitle={Application web avec Bottle - Accès authentifié}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] + Vous devez écrire une application web qui a les routes suivantes : + \begin{itemize} + \item \textbf{la racine (/)}: contient un formulaire de connexion avec deux champs (utilisateur et mot de passe). L'envoie du formulaire se fait vers la route \texttt{/prive} + \item \textbf{/privé}: route avec deux comportements : + \begin{itemize} + \item Affiche "accès autorisé" sur le couple utilisateur et mot de passe correspond à l'utilisateur et au mot de passe enregistré dans le code l'application. + \item Affiche "accès non autorisé" sinon. + \end{itemize} + \end{itemize} +\end{exercise} + +\begin{exercise}[subtitle={Application web avec Bottle - Accès authentifié}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] + Vous devez écrire une application web qui a les routes suivantes : + \begin{itemize} + \item \textbf{/ (la racine)}: contient plusieurs formulaires. Un qui permet de savoir si une année est bissextile et un autre qui compte le nombre de jours depuis le début de l'année. + \item \textbf{/bissextile}: qui affiche l'année et qui dit si l'année est bissextile ou non. + \item \textbf{/jours}: qui affiche la date et le nombre de jour depuis le début de l'année. + \end{itemize} +\end{exercise} + + +% \begin{exercise}[subtitle={QCM}, step={2}, origin={Ma tête}, topics={ Interaction client-serveur }, tags={ HTTP, Flask }] +% \begin{enumerate} +% \item Dans une page HTML se trouve le formulaire suivant: +% +% \end{enumerate} +% \end{exercise} diff --git a/1NSI/05_Interaction_client-serveur/plan_de_travail.pdf b/1NSI/05_Interaction_client-serveur/plan_de_travail.pdf index 546d82ca3e48d102114403fb531df9fb6e2a03c6..c862def67899cfcdce2a84019617f4be8bcfc305 100644 GIT binary patch delta 46182 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 delta 36208 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 AAOHXW diff --git a/1NSI/05_Interaction_client-serveur/scripts/bottle_get_form.py b/1NSI/05_Interaction_client-serveur/scripts/bottle_get_form.py new file mode 100644 index 0000000..cceb261 --- /dev/null +++ b/1NSI/05_Interaction_client-serveur/scripts/bottle_get_form.py @@ -0,0 +1,9 @@ +@get('/formulaire') +def get_formulaire(): + formulaire = """ +
+ + +
+ """ + return template("modele_base.html", boby=formulaire) diff --git a/1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py b/1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py new file mode 100644 index 0000000..56a93d7 --- /dev/null +++ b/1NSI/05_Interaction_client-serveur/scripts/bottle_post_form.py @@ -0,0 +1,6 @@ +@post('/formulaire') +def bonjour() : + nom = bottle.request.forms.get('nom') + body = "

Bonjour mon(a) che(è)r(e) " + nom + "

" + + return template("modele_base.py", body=body) diff --git a/1NSI/05_Interaction_client-serveur/scripts/bottle_template_app.py b/1NSI/05_Interaction_client-serveur/scripts/bottle_template_app.py new file mode 100644 index 0000000..48740d5 --- /dev/null +++ b/1NSI/05_Interaction_client-serveur/scripts/bottle_template_app.py @@ -0,0 +1,7 @@ +from bottle import get, run, template + +@get('/page/') +def page_utilisateur(utilisateur): + return template("utilisateur.html", utilisateur=utilisateur) + +run(host='localhost', port=8080, debug=True) diff --git a/1NSI/05_Interaction_client-serveur/scripts/modele_base.html b/1NSI/05_Interaction_client-serveur/scripts/modele_base.html new file mode 100644 index 0000000..99d7ff5 --- /dev/null +++ b/1NSI/05_Interaction_client-serveur/scripts/modele_base.html @@ -0,0 +1,12 @@ + + + + + + + + + + {{ body }} + +