💻 TIN HỌC · LỚP 12

HTTP API: phương thức, mã trạng thái và tính idempotent

Thiết kế và đọc API theo resource, phương thức, status code, representation và idempotency; phân biệt retry an toàn với thao tác chỉ đọc.

📖 Bài học⏱ 12 phút👁 1🔖 0
Đóng góp bởi Võ Trí Kỳ Nam · cập nhật 03/09/2026
Đăng nhập để học

🔌 API là hợp đồng quan sát được

Một HTTP API mô tả tài nguyên bằng URI, dùng phương thức để biểu đạt ý định và trả status code cùng representation. Tên endpoint đẹp không cứu được hợp đồng mơ hồ: client cần biết dữ liệu bắt buộc, lỗi có cấu trúc, quyền truy cập và hành vi khi gửi lại yêu cầu.

Yêu cầu HTTP gồm method URI headers body đi qua xác thực và xử lí tới response gồm status headers body; nhánh retry kiểm tra tính idempotent
Idempotent nói về hiệu ứng dự kiến của nhiều yêu cầu giống nhau, không có nghĩa response luôn giống hệt.

Phương thức và ý định

  • GET: lấy representation; được định nghĩa là safe và idempotent.
  • PUT: tạo hoặc thay thế trạng thái tại URI đã biết; idempotent theo ngữ nghĩa.
  • DELETE: yêu cầu loại bỏ liên kết tài nguyên; idempotent dù lần sau có thể trả status khác.
  • POST: gửi dữ liệu để xử lí theo semantics của resource; mặc định không idempotent.

Ví dụ retry thanh toán

Nếu client timeout sau POST, nó không biết server đã tạo giao dịch chưa. Gửi lại tùy tiện có thể tạo hai lần. Một thiết kế có thể dùng idempotency key duy nhất, lưu kết quả lần đầu và trả lại kết quả tương ứng cho retry cùng khóa.

Mã trạng thái là một phần hợp đồng

2xx báo xử lí thành công; 4xx chỉ vấn đề ở request hoặc quyền; 5xx cho biết server không hoàn thành. Không trả 200 cho mọi trường hợp rồi giấu lỗi trong chuỗi body, vì proxy, client và quan sát hệ thống mất tín hiệu chuẩn.

✍️ Luyện tập

Thiết kế API đặt vé: nêu URI, method, request schema, lỗi hết chỗ, cơ chế retry và điều kiện hai request được coi là cùng thao tác.

📚 Căn cứ biên soạn

  • Chương trình GDPT 2018 và mạch nội dung Kết nối tri thức với cuộc sống lớp 12.
  • Nội dung biên soạn độc lập; thuật ngữ và mô hình được đối chiếu với nguồn tổ chức chính thức.
NGUỒN HỌC LIỆU

Nội dung được biên soạn từ

TRAO ĐỔI · HỎI ĐÁP

Cùng nhau hiểu bài sâu hơn

Viết lời giải, công thức, đặt câu hỏi hoặc gửi ảnh phần bạn đang vướng.

Đăng nhập để đặt câu hỏi và tham gia trao đổi.

Chưa có trao đổi nào. Hãy là người đầu tiên đặt câu hỏi nhé.