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 แม้ว่าเราจะพยายามให้การแปลมีความถูกต้อง แต่โปรดทราบว่าการแปลอัตโนมัติอาจมีข้อผิดพลาดหรือความไม่ถูกต้อง เอกสารต้นฉบับในภาษาดั้งเดิมควรถือเป็นแหล่งข้อมูลที่เชื่อถือได้ สำหรับข้อมูลที่สำคัญ ขอแนะนำให้ใช้บริการแปลภาษามืออาชีพ เราไม่รับผิดชอบต่อความเข้าใจผิดหรือการตีความผิดที่เกิดจากการใช้การแปลนี้