หมวดหมู่: REST

RESTful (Representational State Transfer )RESTful (Representational State Transfer )

RESTful คือรูปแบบสถาปัตยกรรม ในการออกแบบ Web Service ที่เน้นความเรียบง่าย ประสิทธิภาพ และความสามารถในการขยายระบบ โดยจะอาศัย HTTP Protocol มาตรฐานในการรับ-ส่งข้อมูล


💡 หลักการสำคัญของ RESTful

เพื่อให้ระบบเป็น RESTful อย่างแท้จริง ควรมีคุณสมบัติดังนี้

  • Stateless: ทุกคำสั่งที่ส่งไปยัง Server ต้องมีข้อมูลครบถ้วนในตัวมันเอง Server จะไม่เก็บ “สถานะ” ของผู้ใช้ไว้
  • Client-Server: แยกส่วนการทำงานระหว่างหน้าบ้าน (UI) และหลังบ้าน ออกจากกันชัดเจน
  • Cacheable: ระบบควรระบุได้ว่าข้อมูลไหนสามารถเก็บไว้ใน Cache ได้ เพื่อลดภาระของ Server
  • Uniform Interface: มีรูปแบบการเข้าถึงข้อมูลที่เหมือนกันและเป็นมาตรฐาน

🛠 การใช้งานผ่าน HTTP Methods

RESTful จะนำ HTTP Verbs มาใช้แทนการกระทำต่าง ๆ กับข้อมูล ดังนี้

Methodการทำงาน คำอธิบาย
GETReadดึงข้อมูลจาก Server
POSTCreateส่งข้อมูลใหม่ไปสร้างบน Server
PUTUpdate อัปเดตข้อมูลเดิมโดยแทนที่ทั้งหมดด้วยข้อมูลใหม่
PATCHUpdate อัปเดตข้อมูลเดิมเพียงบางส่วน
DELETEDeleteลบข้อมูลที่ระบุ

🛣 โครงสร้างของ URL

การออกแบบ Endpoint ที่ดีควรใช้ คำนาม แทนคำกริยา และเน้นความเป็นลำดับชั้น

  • GET /users — ดึงรายชื่อผู้ใช้ทั้งหมด
  • GET /users/123 — ดึงข้อมูลผู้ใช้ ID 123
  • POST /users/123/orders — สร้างรายการสั่งซื้อใหม่ให้ผู้ใช้ ID 123

อ่านเพิ่มเติม