HTTP (HyperText Transfer Protocol)
Giao thức tầng ứng dụng phổ biến nhất cho web, hoạt động theo mô hình client-server request/response. Client mở kết nối, gửi yêu cầu, chờ server xử lý và trả về phản hồi.
Stateless (phi trạng thái)
Server không ghi nhớ trạng thái phiên giữa các request - mỗi yêu cầu xử lý độc lập. Vì vậy để duy trì đăng nhập cần cơ chế bổ sung: cookie/session hoặc token. Tính stateless giúp dễ mở rộng ngang (mỗi request xử lý độc lập, phân tải sang nhiều server).
Các HTTP method chính
- GET - lấy dữ liệu (chỉ đọc, không đổi dữ liệu).
- POST - gửi dữ liệu để tạo mới/xử lý (có thể đổi trạng thái server).
- PUT - cập nhật toàn bộ tài nguyên; PATCH - cập nhật một phần.
- DELETE - xóa; OPTIONS - hỏi method được hỗ trợ.
Khi nào dùng
Gần như lựa chọn mặc định cho tương tác client-server trên web, API công khai cho bên thứ ba - vì phổ biến, tương thích cao (kết hợp JSON/XML), client mọi nền tảng dùng được không cần thư viện đặc biệt. Thường chạy trên TCP.
Liên quan
- REST - phong cách API xây trên HTTP
- TCP vs UDP - HTTP chạy trên TCP (cổng 80/443)
- Web Server và Application Server - web server nói HTTP
- Idempotency - tính idempotent của các method