REST API คืออะไร?

REST API (Representational State Transfer Application Programming Interface) เป็นวิธีการในการสื่อสารระหว่างแอปพลิเคชันต่างๆ ผ่านอินเทอร์เน็ต โดยใช้ HTTP (Hypertext Transfer Protocol) เป็นโปรโตคอลหลักในการส่งข้อมูลไปมาระหว่างกัน เปรียบเสมือนภาษาที่แอปต่างๆ ใช้สื่อสารกันเพื่อแลกเปลี่ยนข้อมูล

ทำไมต้อง REST API?

  •  ความยืดหยุ่น : สามารถใช้งานได้กับภาษาโปรแกรมและแพลตฟอร์มต่างๆ
  •  มาตรฐาน : ใช้ HTTP เป็นมาตรฐาน ทำให้เข้าใจและใช้งานได้ง่าย
  •  ง่ายต่อการเรียนรู้ : มีโครงสร้างที่ชัดเจน เข้าใจหลักการได้ไม่ยาก
  •  ประสิทธิภาพ : สามารถส่งข้อมูลได้รวดเร็วและมีประสิทธิภาพ

องค์ประกอบหลักของ REST API

  • Resource : แสดงถึงข้อมูลที่เราต้องการเข้าถึง เช่น ผู้ใช้, สินค้า, บทความ เป็นต้น
  •  HTTP Method : กำหนดการกระทำที่ต้องการทำกับ Resource เช่น
  •  GET: ใช้สำหรับดึงข้อมูล
  •  POST: ใช้สำหรับสร้างข้อมูลใหม่
  •  PUT: ใช้สำหรับอัปเดตข้อมูล
  •  DELETE: ใช้สำหรับลบข้อมูล
  •  Status Code: แสดงผลลัพธ์ของการร้องขอ เช่น 200 (สำเร็จ), 404 (ไม่พบ), 500 (เกิดข้อผิดพลาด)

ตัวอย่าง REST API

สมมติว่าเรามี API สำหรับจัดการข้อมูลผู้ใช้ เราอาจมี endpoint ดังนี้ :

  • GET /users : ดึงข้อมูลผู้ใช้ทั้งหมด
  • POST /users : สร้างผู้ใช้ใหม่
  • GET /users/{id} : ดึงข้อมูลผู้ใช้รายหนึ่ง โดย {id} คือรหัสประจำตัวของผู้ใช้
  • PUT /users/{id} : อัปเดตข้อมูลผู้ใช้รายหนึ่ง
  • DELETE /users/{id} : ลบผู้ใช้รายหนึ่ง

JSON : ภาษาของ REST API

JSON (JavaScript Object Notation) เป็นรูปแบบข้อมูลที่นิยมใช้ในการส่งข้อมูลใน REST API เนื่องจากมีโครงสร้างที่เรียบง่ายและอ่านเข้าใจง่าย

{
"name": "John Doe",
"email": "This email address is being protected from spambots. You need JavaScript enabled to view it.",
"age": 30
}

สร้าง REST API เบื้องต้น

เราสามารถสร้าง REST API ได้ด้วยภาษาโปรแกรมต่างๆ เช่น Python (ด้วย Flask หรือ Django), Node.js (ด้วย Express.js), หรือภาษาอื่นๆ

ตัวอย่างด้วย Python (Flask) :

from flask import Flask, jsonify
app = Flask(__name__)
users = [
    {"id": 1, "name": "Alice"},

  {"id": 2, "name": "Bob"}
]
@app.route('/users')
def get_users():
  return jsonify(users)
if __name__ == '__main__':
  app.run(debug=True)

Best Practices ในการสร้าง REST API

  •  ออกแบบให้เข้าใจง่าย : ใช้ URL และ HTTP Method ที่ชัดเจน
  •  สอดคล้อง : ใช้รูปแบบเดียวกันตลอดทั้ง API
  •  ปลอดภัย : ป้องกันการโจมตีต่างๆ เช่น SQL Injection, XSS
  •  Versioning : กำหนดเวอร์ชันของ API เพื่อให้สามารถเปลี่ยนแปลงได้โดยไม่กระทบต่อผู้ใช้งาน

สรุป

REST API เป็นส่วนสำคัญในการพัฒนาแอปพลิเคชันสมัยใหม่ การเข้าใจหลักการพื้นฐานของ REST API จะช่วยให้คุณสามารถสร้างและใช้งาน API ได้อย่างมีประสิทธิภาพ หากต้องการศึกษาเพิ่มเติม สามารถค้นหาข้อมูลเพิ่มเติมได้จากแหล่งข้อมูลต่างๆ บนอินเทอร์เน็ต

Program & Tools
Thank You for All Sources