Phương thức yêu cầu
Bài học 21 trên 47 trong khóa học Mạng máy tính với terminal của Coddy.
Phương thức cho biết bạn muốn thực hiện loại thao tác nào. Bốn phương thức đáp ứng gần như mọi nhu cầu:
- GET: lấy mục này. Không thay đổi gì.
- POST: đây là một số dữ liệu, hãy xử lý chúng.
- PUT: lưu mục này vào đúng vị trí này.
- DELETE: xóa mục đó.
GET an toàn: phương thức này không bao giờ nên thay đổi bất cứ điều gì trên máy chủ. Vì vậy, trình duyệt có thể tải một trang hai lần mà không cần xin phép. Đó cũng là lý do liên kết dùng để xóa nội dung là một lỗi thiết kế, vì bất cứ thứ gì tự động mở liên kết đều có thể kích hoạt thao tác đó.
Máy chủ có thể từ chối một phương thức mà nó không hỗ trợ và cho biết điều đó bằng mã trạng thái thay vì thông báo lỗi. Chẳng hạn, máy chủ tệp đơn giản của Python chỉ hỗ trợ GET và HEAD.
curl gửi GET trừ khi bạn yêu cầu cách khác. -X thay đổi phương thức.
Thử thách
Trung bìnhYêu cầu máy chủ làm việc mà nó không hỗ trợ, rồi đọc câu trả lời.
Máy chủ tệp của Python chỉ hiểu GET và HEAD. Phục vụ một thư mục trên cổng 9111, rồi gửi cho máy chủ một yêu cầu POST và chỉ in ra mã trạng thái dạng số mà máy chủ trả về.
Đầu ra dự kiến:
501501 nghĩa là “chưa được triển khai”.
-o /dev/nullloại bỏ phần nội dung phản hồi, còn-w "%{http_code}"in ra mã trạng thái.
Tự làm thử
Bài học này có một bài trắc nghiệm ngắn. Bắt đầu bài học để trả lời và theo dõi tiến độ.
Tất cả bài học trong Mạng máy tính với terminal
5Tự xử lý HTTP
Cấu tạo của một yêu cầuPhương thức yêu cầuMã trạng tháiHeader phản hồiViết phản hồiÔn tập: kiến thức cơ bản về HTTPTự luyện tập: Playground Terminal