5.1 Programmer le Raspberry Pi comme client HTTP

Une première façon de programmer notre Raspberry Pi comme un client HTTP serait de le faire en y programmant des sockets. Cependant, nous allons privilégier l’utilisation de bibliothèques comme http.client ou requests qui vont nous faciliter la tâche.

Schéma indiquant les échanges réciproques entre les requêtes d'un objet connecté et les réponses d'un serveur.

Figure 80 — Requêtes d’un objet connecté à un serveur

Vidéo 48 : Programmer un client avec des sockets sur Raspberry Pi

Vidéo 49 : Programmer un client HTTP sur Raspberry Pi


5.1.1 Obtenir des données d’un fichier JSON

Par exemple, on peut très facilement installer et utiliser la bibliothèque requests pour envoyer des requêtes HTTP GET et obtenir un fichier de données JSON. Pour l’installer, dans le terminal du Raspberry Pi, on utilise la commande pip install requests. Ensuite, dans un programme Python dans le Raspberry Pi, on importe la bibliothèque puis on utilise la commande fichier = requests.get(url) pour obtenir un fichier se trouvant à l’adresse URL choisie. Et dans le cas d’un fichier JSON, on peut ensuite utiliser donnée = fichier.json()[‘clé’] autant de fois que nécessaire pour extraire les données associées à différentes clés.

Figure 81 — Utilisation de la bibliothèque requests pour obtenir un fichier JSON

Figure 81 — Utilisation de la bibliothèque requests pour obtenir un fichier JSON

Finalement, la bibliothèque requests incorpore aussi les mécanismes de sécurité et permet donc d’accéder à des adresses sécurisées, commençant par HTTPS (Hypertext Transfer Protocol Secure).

Vidéo 50 : Programmer un client JSON sur Raspberry Pi


5.1.2 Exercices avec des données JSON