Bài viết dịch từ https://developer.mozilla.org/ja/docs/Web/HTTP/Status
HTTP response code là mã dung để biểu thị trạng thái request HTTP chỉ định. Response được chia thành 5 class: Information Respone, success response, redirection, client erro và server error.
Mời các bạn đọc bên dưới để có được ý nghĩa chi tiết của từng loại response.
Information Respone
Status code |
Status text |
Descriptiion |
HTTP version |
100 |
Continue |
Đây là response tạm thời, có nghĩa là, đến thời điểm đó thì không có vấn đề gì, client có thể tiếp tục gửi request, hoặc, trong trường hợp đã request xong thì không cần để ý đến nó. |
Chỉ HTTP/1.1 |
101 |
Switching Protocol |
Code này nghĩa là upgrade client: Server chuyển đổi protocol được gửi dưới dạng response request header. Phần này được đưa vào để có thể chuyển migrate thành các protocol version không tương thích, không hay được sử dụng mấy. |
Chỉ HTTP/1.1 |
Success reponse
Status code |
Status text |
Descriptiion |
HTTP version |
200 |
OK |
Là response khi request thành công. Như thế nào là “Thành công” thì lại tùy vào method HTTP• GET: Resource được lấy ra và gửi đi ở message body.• HEAD: Entity header nằm trong message body.• POST: Rource biểu thị kết quả action được gửi ở message body.• TRACE: Request message mà server đã nhận nằm ở message body. |
Từ HTTP/0.9 trở lên |
201 |
Created |
Request thành công, resource mới đã được tạo. Code này chủ yếu là response sau khi gửi request PUT. |
Từ HTTP/0.9 trở lên |
202 |
Accepted |
Đã nhận request nhưng chưa tiến hành. |
Từ HTTP/0.9 trở lên |
Redirect message
Status code |
Status text |
Descriptiion |
HTTP version |
300 |
Multiple Choice |
Có quá nhiều response đối với request. User agent hay user sẽ chọn 1 cái trong số đó. Không tiêu chuẩn hóa phương pháp chọn 1 trong số nhiều response. |
Từ HTTP/1.0 trở lên |
301 |
Moved Permanently |
URL của resource request đã bị thay đổi. Có lẽ URL mới sẽ được đưa về trong response. |
Từ HTTP/0.9 trở lên |
302 |
Found |
URL của resource request tạm thời bị thay đổi. Cũng có thể trong tương lai URL đó sẽ được thay đổi thành 1 cái mới. Do đó, client nên sử dụng URL đó đối với request trong tương lai. |
Từ HTTP/0.9 trở lên |
303 |
See Other |
Server gửi response này để hướng dẫn client sử dụng request GET bằng URL khác để lấy resource đã request. |
HTTP/0.9 và 1.1 |
304 |
Not Modified |
Sử dụng cho cash: Response không bị thay đổi đối với client. Do đó, client tiếp tục sử dụng respones đã cash. |
Từ HTTP/0.9 trở lên |
305 |
Use Proxy |
Resource request phải access thông qua proxy server. Response này không hay được support vì lý do security. |
Chỉ HTTP 1.1 |
306 |
unused |
Response code này không được sử dụng. Đã từng được dùng ở server cũ HTTP 1.1 |
Chỉ HTTP 1.1 |
307 |
Temporary Redirect |
Server gửi response này để hướng dẫn client sử dụng method giống với request ban đầu ở URL khác để lấy resource đã request. Response code này xét về ý nghĩa thì giống với 302 Found HTTP, tuy nhiên, vẫn có điểm khác: User agent bắt buộc phải thay đổi method HTTP sử dụng. Trường hợp đang sử dụng POST ở request ban đầu thì request sau cũng phải sử dụng POST. |
Chỉ HTTP 1.1 |
Client error response
Status code |
Status text |
Descriptiion |
HTTP version |
400 |
Bad Request |
Do cú pháp không hợp lệ nên server không hiểu được request. |
Từ HTTP/0.9 trở lên |
401 |
Unauthorized |
Cần xác thực để có thể lấy được resource request. Code này tương tự 403, nhưng trong trường hợp này có thể tiến hành xác thực. |
Từ HTTP/0.9 trở lên |
404 |
Not Found |
Server không thể tìm thấy resource đã được request. Response code này hay xuất hiện trên Web, nên cũng là 1 code khá nổi tiếng. |
Từ HTTP/0.9 trở lên |
405 |
Method Not Allowed |
Server nhận biết được request method nhưng không thể sử dụng, có thể do đã bị vô hiệu hóa. Không được disable 2 method bắt buộc là GET và HEAD, đồng thời, không cần trả về error code này. |
Chỉ HTTP/1.1 |
407 |
Proxy Authentication Required |
Giống tương tự 401 nhưng khác ở điểm proxy server request xác thực. |
Chỉ HTTP/1.1 |
409 |
Conflict |
Được gửi đến trong trường hợp request trái ngược với trạng thái hiện tại của server. |
Chỉ HTTP/1.1 |
410 |
Gone |
Được gửi đến trong trường hợp content request đã bị xóa khỏi server. |
Chỉ HTTP/1.1 |
411 |
Length Required |
Server yêu cầu header field Content-Length nhưng do không được khai báo ở request nên server từ chối request. |
Chỉ HTTP/1.1 |
412 |
Precondition Failed |
Điều kiện tiền đề không phù hợp bên server có chứa trong header của client. |
Chỉ HTTP/1.1 |
413 |
Payload Too Large |
Request vượt quá giới hạn server quy định. Server đóng connection hoặc trả về header field Retry-After. |
Chỉ HTTP/1.1 |
414 |
URI Too Long |
URL mà client đã request vượt quá chiều dài có thể xử lý ở server. |
Chỉ HTTP/1.1 |
415 |
Unsupported Media Type |
Hình thức media của data đã request không được server support, server từ chối request. |
Chỉ HTTP/1.1 |
416 |
Requested Range Not Satisfiable |
Không thoải mãn phạm vi chỉ định ở header field Range trong request. Có thể phạm vi đã chỉ định vượt quá size data của URL đích. |
Chỉ HTTP/1.1 |
417 |
Expectation Failed |
Nội dung đã chỉ định ở request header Expect không phù hợp với server. |
Chỉ HTTP/1.1 |
418 |
I'm a teapot |
Khi làm giống như pha coffee bằng teapot thì sẽ trả về error code "418 I'm a teapot". Entity Body trả về là short and stout. |
HTCPCP/1.0 |
421 |
Misdirected Request |
Request đã được gửi tới server không thể khởi tạo response. Server chưa chỉ định gửi code này để khởi tạo response đối với scheme có trong URL request. |
HTTP/2.0 |
429 |
Too Many Requests |
Server gửi quá nhiều request trong 1 khoảng thời gian nhất định. ("Rate limit") |
Từ HTTP/1.1 trở lên |
431 |
Request Header Fields Too Large |
Header field quá lớn nên server không muốn xử lý request. Sau khi giảm size header field thì có thể gửi lại request. |
Từ HTTP/1.1 trở lên |
Server error response
Status code |
Status text |
Descriptiion |
HTTP version |
500 |
Internal Server Error |
Ở server xuất hiện trạng thái không biết phương pháp xử lý. |
Từ HTTP/0.9 trở lên |
501 |
Not Implemented |
Request method không được server hỗ trợ, không được xử lý. Method server chắc chắn hỗ trỡ chỉ có GET và HEAD (Do đó, không được trả về code này). |
Từ HTTP/0.9 trở lên |
502 |
Bad Gateway |
Server lấy đã lấy về response không đúng khi thực thi gateway lấy response cần thiết cho xử lý request. |
Từ HTTP/0.9 trở lên |
504 |
Gateway Timeout |
Không lấy được respose khi server thực thi dưới dạng getway. |
Chỉ HTTP/1.1 |
505 |
HTTP Version Not Supported |
Server không support version HTTP đang dùng để request. |
Chỉ HTTP/1.1 |
511 |
Network Authentication Required |
Cần xác thực để client access bằng network. |
HTTP/1.1 |