Courte introduction à la WSGI avec Python

Parfois les frameworks ne sont pas nécessaires.

a marqué ce sujet comme résolu.

Wsgi c'est en gros un protocole (une norme) qui dit comment devrait communiquer un serveur web (nginx, apache, etc.) avec les applications et web et les framework (Django, flask,…). C'est donc qu'une convention.

Kje

ouais mais justement je ne trouve pas ça bien expliqué dans le tuto.

Attention à l'abus de balises "question"/"information". Je me permets de recopier ici un conseil que j'ai envoyé par MP y'a pas longtemps :

Si ça peut paraître une bonne idée au départ, le fait d'articuler la quasi-totalité du tutoriel dans un question-réponse le rend difficile à suivre : tu attires beaucoup plus l'attention du lecteur sur les questions qu'il est censé poser que sur ton code et les explications qui l'accompagnent. Je te suggère d'adopter une forme plus sobre, plus directe : avoir une balise question/information de temps en temps permet de soulever un point-clé à retenir. S'il yen a une toutes les 3 lignes, elles ne mettent plus rien en valeur.

Il s'agit de se servir du rythme de ton tutoriel pour taquiner le cerveau du lecteur. Par exemple, tu veux qu'une section mette en valeur et résolve un problème technique qui se pose dans la partie précédente : commence par un paragraphe plat qui explique le problème, peut-être en t'appuyant sur du code (au passage, ne masque pas le code, à moins que ce soit la solution d'un exercice). Puis dès que le problème est posé/isolé, casse le rythme et pose ta question :

Comment faire pour… (résoudre ce truc) ?

À ce moment-là, en cassant le rythme brutalement avec ta question, tu viens de réveiller le lecteur et d'attirer toute son attention sur ce qui va suivre : tu peux commencer à resoudre le problème posé avec des explications préliminaires, un code qui fait le job, des explications détaillées sur ton code pour ne pas perdre les débutants, peut-être avec des liens vers la doc standard pour éviter de la paraphraser. Et maintenant, tu veux qu'il ressorte de ta section en ayant retenu "le truc", l'idée-clé qui a débloqué la situation…

Ce qu'il faut retenir, c'est ce que je mets en valeur dans cette balise info.

Essaye d'adopter ce genre de rythme, tu verras que même en te relisant tu trouveras tes propres explications plus nettes, plus aérées, plus agréables à suivre.

+1 -0

Je viens de prendre connaissance de ce cours, et j'ai quelques premières remarques qui me viennent.

  • Le code de statut HTTP est présenté comme faisant partie des en-têtes, ce sont pourtant deux choses bien distinctes ;
  • Vous parlez du langage HTML, mais sans vraiment de lien vers des articles ou de la documentation à son sujet ;
  • « De plus, ce code précise l'encodage et nous évite d'avoir à convertir notre page en bytes ce qui est tout de même plus simple. » → c'est pourtant ce qui est fait en appelant la méthode encode ;
  • Les clefs d'ENVIRON ne sont pas décrites, PATH_INFO arrive comme un cheveux sur la soupe ;
  • « mais avec WSGI, c'est plus compliqué car on ne peut pas utiliser return plusieurs fois dans une même vue » → on ne peut pas utiliser plusieurs return, mais aucun problème pour plusieurs yield ; ça tombe bien, la fonction doit retourner un itérable, et ça me semble plus simple à introduire que les stringIo ;
  • Pour ce qui est des templates, il pourrait être utile d'aborder des moteurs tels que jinja2 ;
  • J'ai des doutes sur la pertinence des exercices, on ne comprend pas ce que vient faire la fonction normalize (et on est censé pouvoir la coder sans que ses paramètres et sa valeur de retour n'aient été expliqués), ensuite, je ne comprends pas l'intérêt du split ;
  • Des « on vous laisse chercher » sans que le lecteur ne sache un traître mot de ce qu'il doit faire ;
  • Pas convaincu par l'utilisation des gestionnaires de contexte pour générer du HTML ;
  • Le lancement du serveur qui ouvre une page dans le navigateur, euh…
Ce sujet est verrouillé.