ในการกำหนดการผูกที่กำหนดเองในฟังก์ชั่น Azure สำหรับทริกเกอร์ IFTTT คุณต้องทำตามขั้นตอนของขั้นตอนที่เกี่ยวข้องกับการสร้างส่วนขยายการเชื่อมโยงที่กำหนดเอง นี่คือการสลายกระบวนการ:
1. ทำความเข้าใจพื้นฐานของทริกเกอร์และการผูก
ในฟังก์ชั่น Azure ทริกเกอร์เริ่มต้นการดำเนินการของฟังก์ชั่นของคุณในขณะที่การผูกจะช่วยให้คุณเชื่อมต่อฟังก์ชั่นของคุณเข้ากับทรัพยากรอื่น ๆ ฟังก์ชั่นสามารถมีทริกเกอร์หนึ่งตัวและการผูกอินพุต/เอาต์พุตหลายรายการ การเชื่อมโยงที่กำหนดเองสามารถสร้างขึ้นเพื่อเชื่อมต่อกับบริการที่ไม่ได้ใช้งานหรือใช้โปรโตคอลเฉพาะ
2. สร้างส่วนขยายที่มีผลผูกพันที่กำหนดเอง
ในการใช้การเชื่อมโยงที่กำหนดเองโดยทั่วไปคุณจะต้องสร้างส่วนขยายที่ปฏิบัติตามขั้นตอนต่อไปนี้:
- กำหนดแอตทริบิวต์การเชื่อมโยง: คุณต้องสร้างคลาสแอตทริบิวต์ที่แสดงถึงการเชื่อมโยงที่กำหนดเองของคุณ คลาสนี้จะกำหนดวิธีการเชื่อมโยงและพารามิเตอร์ที่ยอมรับ
- ใช้ตรรกะที่มีผลผูกพัน: สิ่งนี้เกี่ยวข้องกับการสร้างคลาสที่ใช้อินเตอร์เฟส `itriggerbinding` สำหรับทริกเกอร์หรือ` iaynccollector` สำหรับการผูกเอาท์พุท คลาสนี้มีตรรกะสำหรับวิธีการประมวลผลข้อมูลเมื่อทริกเกอร์ยิง
- ลงทะเบียนการเชื่อมโยง: การเชื่อมโยงที่กำหนดเองจะต้องลงทะเบียนในโครงการฟังก์ชั่น Azure ของคุณโดยทั่วไปภายในการกำหนดค่าเริ่มต้น
3. ขั้นตอนการใช้งานตัวอย่าง
- ขั้นตอนที่ 1: กำหนดแอตทริบิวต์
สร้างคลาสแอตทริบิวต์ที่ระบุคุณสมบัติสำหรับการเชื่อมโยงของคุณ (เช่นปุ่ม API, URL)
- ขั้นตอนที่ 2: สร้างตัวเชื่อมต่อบริการ
ใช้ตรรกะเพื่อเชื่อมต่อกับบริการภายนอก (เช่น IFTTT) โดยใช้คำขอ HTTP หรือโปรโตคอลอื่น ๆ
- ขั้นตอนที่ 3: สร้างบริบทที่มีผลผูกพัน
กำหนดวิธีการจัดการข้อมูลที่เข้ามาจาก IFTTT โดยใช้วิธีการในคลาสที่มีผลผูกพันของคุณ
- ขั้นตอนที่ 4: เปิดใช้งานส่วนขยายที่กำหนดเอง
ตรวจสอบให้แน่ใจว่าแอปฟังก์ชั่นของคุณรับรู้และเปิดใช้งานการเชื่อมโยงที่กำหนดเองในระหว่างการเริ่มต้น
- ขั้นตอนที่ 5: ใช้การเชื่อมโยงที่กำหนดเองในฟังก์ชั่น
สุดท้ายใช้แอตทริบิวต์ที่กำหนดไว้ในลายเซ็นฟังก์ชั่นของคุณเพื่อใช้ประโยชน์จากการผูกที่กำหนดเอง
4. ข้อควรพิจารณา
เมื่อสร้างการเชื่อมโยงที่กำหนดเองโปรดทราบว่าพวกเขาจะต้องได้รับการแต่งตั้งใน. NET แต่สามารถใช้งานได้จากภาษาที่รองรับในฟังก์ชั่น Azure นอกจากนี้โปรดทราบว่าในขณะที่การเชื่อมโยงอินพุตและเอาต์พุตแบบกำหนดเองได้รับการสนับสนุนอย่างเต็มที่การสร้างประเภททริกเกอร์ใหม่ทั้งหมดอาจมีข้อ จำกัด ตามฟังก์ชั่น Azure Hosting Plan ที่คุณใช้ (เช่นแผนการบริโภคกับแผนพรีเมี่ยม) [1] [3] [4]
สำหรับคำแนะนำและตัวอย่างโดยละเอียดเพิ่มเติมโปรดดูแหล่งข้อมูลเช่นเอกสาร Azure WebJobs SDK และบล็อกชุมชนที่ให้ข้อมูลเชิงลึกเกี่ยวกับการใช้งานเฉพาะ [2] [5]
การอ้างอิง:
[1] https://stackoverflow.com/questions/72296346/custom-triggers-and-bindings-for-azure-function
[2] https://stackoverflow.com/questions/44478231/how-do-i--implement-a-custom-binding-for-azure-functions
[3] https://learn.microsoft.com/en-us/azure/azure-functions/functions-triggers-bindings
[4] https://github.com/azure/azure-webjobs-sdk/wiki/creating-custom-input-and-utput-bindings
[5] https://learn.microsoft.com/en-us/shows/on-dotnet/creating-custom-bindings-for-azure-functions
[6] https://www.youtube.com/watch?v=VKRUN9QIUI8
[7] https://www.telerik.com/blogs/triggers-and-bindings-in-azure-functions
[8] https://blog.andydoyle.org/2016/10/an-introduction-to-azure-functions/