HTTP codes - Happy Valentine's Day

Bạc xỉuTrà đá

Làm lập trình viên và nhất là đối với lập trình web thì chắc hẳn bạn sẽ không thấy lạ với những error codes của HTTP. Trong trường hợp server không xử lý được hay có lỗi trong quá trình xử lý request của client thì việc trả lại đúng error code cũng giúp client dễ hiểu hơn rất nhiều. Thường thì chúng ta chỉ quen sử dụng vài code cơ bản như 200, 404, 500, 503,...

Nhiều khi do có quy ước giữa client và server nên HTTP code không chính xác với miêu tả, tuy nhiên các mã này lại rất quan trọng với các search engines, do đó việc sử dụng chính xác code cho từng tình huống khác nhau sẽ giúp trang web của bạn được index một cách chính xác hơn.

Sử dụng response code trong bài viết này kết hợp với request trong bài REST 101, chắc chắn bạn sẽ có một sản phẩm đúng chuẩn, ngoài ra đây cũng là món quà cho các thanh niên không bon chen hoặc không có cạ để bon chen ra đường ngày Valentine (như mình) 😂

200s: The Happy Ending

Các code 2xx thường là request được thực hiện đúng, được hiểu và xử lý thành công, không có lỗi trên server.

300s: Redirect

3xx thường là code được trả về khi client cần phải thực hiện thêm một số hành động nữa cho request của mình.

Thường thì code 3xx sẽ không được thể hiện rõ, tuy nhiên với các search engines thì code 3xx sẽ được xem xét một cách kĩ lưỡng, chính vì thế lập trình viên nên sử dụng code này một cách cẩn trọng.

Các code 302-307 thường hay được sử dụng nhầm cho nhau, muốn hiểu rõ sự khác nhau và sử dụng đúng có thể tham khảo bài viết này.

Code 304 thường được sử dụng cho các tài nguyên được cache lại và tái sử dụng mà không cần load lại. Trên thực tế thì cũng có một vài bạn nữ sử dụng cache kiểu này với nhiều bạn nam 😂

400s: Client Error

Code 4xx thường được sử dụng với các lỗi từ request của client, lỗi của browser hoặc lỗi với URL được yêu cầu.

Đây có lẽ là code phổ biến nhất được sử dụng, thường thì 404 được trả về khi resource được truy cập không tồn tại, đã tồn tại nhưng bị xoá. Chính xác hơn thì trong trường hợp thứ 2 code chính xác sẽ không phải là 404 mà là 410.

Do bị hiểu lầm nên code này thường bị thay thế bằng 404.

Tình chị em

500s: Server Error

Các lỗi 5xx thường được sử dụng cho các lỗi phát sinh ở phía server khi xử lý các request của client. Nổi tiếng nhất chắc sẽ là code 500.

Bonus

Bắt đầu từ ngày cá tháng tư năm 1998 (4/1/1998), lỗi 418 I'm a teapot được thêm vào document của IETF. Tuy chỉ là một trò đùa nhưng hiện tại vẫn có rất nhiều lập trình viên sử dụng.

Và mình dự đoán trong ngày hôm nay, sẽ có rất rất nhiều lỗi 419 được thực hiện. Dù sao thì cũng là ngày thăng hoa của tình yêu mà ;))

Refs

Bài viết được dịch lại từ bài viết gốc HTTP codes as Valentine’s Day comics của hanilim trên Medium. Cảm ơn tác giả vì có một bài viết dễ thương và đi vào lòng người một cách xuất sắc như thế này.

Cuối cùng thì, xin chúc các bạn có một ngày valentine vui vẻ! Happy Valentine's Day!

Tags: #blog #technical