4.3 KiB
Ajouter un contrôle manuel du relais
Instructions
Le code sans serveur peut être déclenché par de nombreux éléments, y compris des requêtes HTTP. Vous pouvez utiliser des déclencheurs HTTP pour ajouter une commande manuelle à votre contrôle de relais, permettant à quelqu'un d'allumer ou d'éteindre le relais via une requête web.
Pour cet exercice, vous devez ajouter deux déclencheurs HTTP à votre Functions App pour allumer et éteindre le relais, en réutilisant ce que vous avez appris dans cette leçon pour envoyer des commandes à l'appareil.
Quelques conseils :
-
Vous pouvez ajouter un déclencheur HTTP à votre Functions App existante avec la commande suivante :
func new --name <trigger name> --template "HTTP trigger"
Remplacez
<trigger name>
par le nom de votre déclencheur HTTP. Utilisez quelque chose commerelay_on
etrelay_off
. -
Les déclencheurs HTTP peuvent avoir un contrôle d'accès. Par défaut, ils nécessitent qu'une clé API spécifique à la fonction soit transmise avec l'URL pour s'exécuter. Pour cet exercice, vous pouvez supprimer cette restriction afin que n'importe qui puisse exécuter la fonction. Pour ce faire, mettez à jour le paramètre
authLevel
dans le fichierfunction.json
des déclencheurs HTTP avec la valeur suivante :"authLevel": "anonymous"
💁 Vous pouvez en savoir plus sur ce contrôle d'accès dans la documentation sur les clés d'accès des fonctions.
-
Par défaut, les déclencheurs HTTP prennent en charge les requêtes GET et POST. Cela signifie que vous pouvez les appeler en utilisant votre navigateur web - les navigateurs web effectuent des requêtes GET.
Lorsque vous exécutez votre Functions App localement, vous verrez l'URL du déclencheur :
Functions: relay_off: [GET,POST] http://localhost:7071/api/relay_off relay_on: [GET,POST] http://localhost:7071/api/relay_on iot-hub-trigger: eventHubTrigger
Collez l'URL dans votre navigateur et appuyez sur
Entrée
, ouCtrl+clic
(Cmd+clic
sur macOS) sur le lien dans la fenêtre du terminal dans VS Code pour l'ouvrir dans votre navigateur par défaut. Cela exécutera le déclencheur.💁 Remarquez que l'URL contient
/api
- les déclencheurs HTTP se trouvent par défaut dans le sous-domaineapi
. -
Lorsque vous déployez la Functions App, l'URL du déclencheur HTTP sera :
https://<functions app name>.azurewebsites.net/api/<trigger name>
Où
<functions app name>
est le nom de votre Functions App, et<trigger name>
est le nom de votre déclencheur.
Grille d'évaluation
Critères | Exemplaire | Adéquat | À améliorer |
---|---|---|---|
Créer des déclencheurs HTTP | A créé 2 déclencheurs pour allumer et éteindre le relais, avec des noms appropriés | A créé un déclencheur avec un nom approprié | N'a pas réussi à créer de déclencheurs |
Contrôler le relais à partir des déclencheurs HTTP | A réussi à connecter les deux déclencheurs à IoT Hub et à contrôler le relais correctement | A réussi à connecter un déclencheur à IoT Hub et à contrôler le relais correctement | N'a pas réussi à connecter les déclencheurs à IoT Hub |
Avertissement :
Ce document a été traduit à l'aide du service de traduction automatique Co-op Translator. Bien que nous nous efforcions d'assurer l'exactitude, veuillez noter que les traductions automatisées peuvent contenir des erreurs ou des inexactitudes. Le document original dans sa langue d'origine doit être considéré comme la source faisant autorité. Pour des informations critiques, il est recommandé de recourir à une traduction professionnelle réalisée par un humain. Nous déclinons toute responsabilité en cas de malentendus ou d'interprétations erronées résultant de l'utilisation de cette traduction.