Sunday, December 24, 2023

Các nguyên lý cơ bản khi thiết kế 1 REST API

What?

REST (Representational State Transfer): là 1 cách thức để viết 1 API cho web service, 1 service đáp ứng các ràng buộc này được gọi là RESTful

REST không phải là standard, protocol.

Why?

So với các cách viết API khác: RPC, SOAP, HATEOAS, REST dễ đọc, hiểu, trực quan

How?

  • Url style:
    • Rõ ràng, dễ đọc, hiểu, dễ gõ và dễ chia ser
    • Chữ thường (lower case)
    • Sử dụng chữ, số, "-" và "_". Không dùng ký tự đặc biệt trừ 
    • Sử dụng "-" để phân tách các từ trên url: https://www.duongnv.dev/new-world
    • Sử dụng danh từ hơn động từ
  • Url structure
    • parameter:
      • dạng key=value
      • phân cách các tham số bằng dấu "&"
      • nếu muốn truyền list: lặp key nhiều lần
  • Use HTTP VERB
    • POST: create
    • GET: read
    • PUT: update
    • DELETE: delete
  • Use HTTP status code for response:
    • 1xx informational response – request từ client đã được ghi nhận, đang xử lý
    • 2xx successful – yêu cầu được tiếp nhận, xử lý thành công
    • 3xx redirection – yêu cầu được chuyển tiếp, lái luồng
    • 4xx client error – Yêu cầu không đủ thông tin / hợp lệ / sai định dạng để servẻ có thể xử lý
    • 5xx server error – Yêu cầu hợp lệ, nhưng server bị lỗi ko xử lý được
  • Các HTTP status code thường dùng
    • 200: yêu cầu xử lý thành công
    • 400: Yêu cầu không hợp lệ: sai định dạng, cấu trúc, tham số ....
    • 401: Yêu cầu hợp lệ nhưng cần đăng nhập để xác thực client
    • 403: Yêu cầu hợp lệ, client đã xác thực nhưng không có quyền
    • 500: Yêu cầu hợp lệ nhưng server xử lý bị lỗi
Implementation?





No comments:

Post a Comment

Các nguyên lý cơ bản khi thiết kế 1 REST API

What? REST (Representational State Transfer): là 1 cách thức để viết 1 API cho web service, 1 service đáp ứng các ràng buộc này được gọi là ...