วิธีให้บริการเนื้อหา HTML
- แนะนำวิธีคืนค่าเนื้อหา HTML และจัดการคำขอ AJAX โดยใช้ PostgREST และไลบรารี htmx
- htmx คาดหวังการตอบกลับเป็น HTML และใช้สิ่งนี้เพื่อแทนที่องค์ประกอบภายใน DOM
การตั้งค่าเบื้องต้น
- สร้างแอปสิ่งที่ต้องทำ (to-do) โดยอิงจากบทช่วยสอน 0
- ดำเนินการโดยไม่ใช้การยืนยันตัวตน และมอบสิทธิ์ทั้งหมดบนตาราง
todos ให้กับผู้ใช้ web_anon
- เพิ่ม
text/html เป็น media type handler เพื่อให้ PostgREST รับรู้คำขอจากเว็บเบราว์เซอร์เป็นเอกสาร HTML
การสร้างการตอบกลับแบบ HTML
การแสดงรายการและสร้างสิ่งที่ต้องทำ
- สร้างฟังก์ชันเพื่อแสดงรายการสิ่งที่ต้องทำที่มีอยู่แล้วในฐานข้อมูล
- ใช้สำหรับสร้างเทมเพลตรายการสิ่งที่ต้องทำ และไม่ได้ใช้เป็น PostgREST endpoint
- เพิ่ม endpoint สำหรับบันทึกสิ่งที่ต้องทำลงในฐานข้อมูล และแก้ไขหน้า
/rpc/index
การแก้ไขและลบสิ่งที่ต้องทำ
- ปรับแก้ฟังก์ชัน
api.html_todo ให้มีความสามารถมากขึ้น
- เพิ่มความสามารถใหม่ของ htmx: เปลี่ยนสถานะสิ่งที่ต้องทำ, คืนค่า HTML ที่สามารถแก้ไขสิ่งที่ต้องทำได้, และลบสิ่งที่ต้องทำ
- เพิ่ม endpoint สำหรับแก้ไขสิ่งที่ต้องทำ รวมถึงแก้ไขและลบสิ่งที่ต้องทำในฐานข้อมูล
ความเห็นของ GN⁺
- บทความนี้อาจน่าสนใจสำหรับนักพัฒนาเว็บ เพราะอธิบายวิธีใช้ PostgREST และไลบรารี htmx เพื่อให้บริการเนื้อหา HTML แบบไดนามิกในเว็บแอปพลิเคชัน
- การอัปเดตหน้าเว็บแบบอะซิงโครนัสด้วย AJAX เป็นส่วนสำคัญของการพัฒนาเว็บสมัยใหม่ และบทความนี้ให้ตัวอย่างที่เป็นรูปธรรมในการนำความสามารถดังกล่าวไปใช้งาน
- เป็นแหล่งข้อมูลที่ดีสำหรับการเรียนรู้วิธีปรับปรุงส่วนติดต่อผู้ใช้และเพิ่มประสิทธิภาพการสื่อสารระหว่างเซิร์ฟเวอร์กับไคลเอนต์
1 ความคิดเห็น
ความเห็นจาก Hacker News