6.8 KiB
เพิ่มการควบคุมรีเลย์แบบแมนนวล
คำแนะนำ
โค้ดแบบ Serverless สามารถถูกเรียกใช้งานได้จากหลายสิ่ง เช่น การร้องขอ HTTP คุณสามารถใช้ HTTP triggers เพื่อเพิ่มการควบคุมรีเลย์แบบแมนนวล ทำให้ผู้ใช้งานสามารถเปิดหรือปิดรีเลย์ผ่านการร้องขอจากเว็บได้
สำหรับงานนี้ คุณต้องเพิ่ม HTTP triggers สองตัวใน Functions App ของคุณเพื่อเปิดและปิดรีเลย์ โดยใช้สิ่งที่คุณได้เรียนรู้จากบทเรียนนี้ในการส่งคำสั่งไปยังอุปกรณ์
คำแนะนำบางประการ:
-
คุณสามารถเพิ่ม HTTP trigger ใน Functions App ที่มีอยู่แล้วด้วยคำสั่งต่อไปนี้:
func new --name <trigger name> --template "HTTP trigger"แทนที่
<trigger name>ด้วยชื่อสำหรับ HTTP trigger ของคุณ ใช้ชื่อเช่นrelay_onและrelay_off -
HTTP triggers สามารถมีการควบคุมการเข้าถึงได้ โดยค่าเริ่มต้นจะต้องมี API key เฉพาะฟังก์ชันที่ส่งมาพร้อม URL เพื่อเรียกใช้งาน สำหรับงานนี้ คุณสามารถลบข้อจำกัดนี้ออกเพื่อให้ทุกคนสามารถเรียกใช้งานฟังก์ชันได้ โดยการอัปเดตการตั้งค่า
authLevelในไฟล์function.jsonสำหรับ HTTP triggers เป็นค่าต่อไปนี้:"authLevel": "anonymous"💁 คุณสามารถอ่านเพิ่มเติมเกี่ยวกับการควบคุมการเข้าถึงใน เอกสารเกี่ยวกับ Function access keys
-
HTTP triggers รองรับการร้องขอแบบ GET และ POST โดยค่าเริ่มต้น ซึ่งหมายความว่าคุณสามารถเรียกใช้งานผ่านเว็บเบราว์เซอร์ได้ - เว็บเบราว์เซอร์จะทำการร้องขอแบบ GET
เมื่อคุณเรียกใช้งาน Functions App ในเครื่อง คุณจะเห็น URL ของ trigger:
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คัดลอก URL และวางลงในเบราว์เซอร์ของคุณแล้วกด
returnหรือCtrl+click(Cmd+clickบน macOS) ลิงก์ในหน้าต่าง terminal ใน VS Code เพื่อเปิดในเบราว์เซอร์เริ่มต้นของคุณ การดำเนินการนี้จะเรียกใช้งาน trigger💁 สังเกตว่า URL มี
/apiอยู่ในนั้น - HTTP triggers จะอยู่ใน subdomainapiโดยค่าเริ่มต้น -
เมื่อคุณ deploy Functions App URL ของ HTTP trigger จะเป็น:
https://<functions app name>.azurewebsites.net/api/<trigger name>โดยที่
<functions app name>คือชื่อของ Functions App ของคุณ และ<trigger name>คือชื่อของ trigger ของคุณ
เกณฑ์การประเมิน
| เกณฑ์ | ดีเยี่ยม | พอใช้ | ต้องปรับปรุง |
|---|---|---|---|
| สร้าง HTTP triggers | สร้าง triggers สองตัวเพื่อเปิดและปิดรีเลย์ พร้อมชื่อที่เหมาะสม | สร้าง trigger หนึ่งตัวพร้อมชื่อที่เหมาะสม | ไม่สามารถสร้าง triggers ได้ |
| ควบคุมรีเลย์จาก HTTP triggers | สามารถเชื่อมต่อ triggers ทั้งสองตัวกับ IoT Hub และควบคุมรีเลย์ได้อย่างเหมาะสม | สามารถเชื่อมต่อ trigger หนึ่งตัวกับ IoT Hub และควบคุมรีเลย์ได้อย่างเหมาะสม | ไม่สามารถเชื่อมต่อ triggers กับ IoT Hub ได้ |
ข้อจำกัดความรับผิดชอบ:
เอกสารนี้ได้รับการแปลโดยใช้บริการแปลภาษา AI Co-op Translator แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ขอแนะนำให้ใช้บริการแปลภาษามืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้