2011-12-25 36 views
8

Tôi bắt đầu thích HTTP, cho đến khi tôi phát hiện ra một số mã trạng thái like 304, không chứa nội dung thư và bị CRLF chấm dứt.Danh sách toàn diện các mã trạng thái HTTP KHÔNG BAO GỒM MỘT CƠ THỂ RESPONSE

Danh sách toàn diện ở đâu? Cho đến nay tôi nhận được: 100-199, 204304. Có ai khác không?

EDIT: Không, không theo tiêu chuẩn. Cảm ơn câu trả lời.

Tôi quan tâm đến việc phân định thư với các kết nối liên tục. tức là một thông điệp HTTP dừng ở đâu và lần bắt đầu tiếp theo.

+0

đây là danh sách mã trạng thái HTTP (http://en.wikipedia.org/wiki/List_of_HTTP_status_codes) ... CHÀO MỪNG rằng ngay cả các mã trả về nội dung phản hồi có thể trong một số trường hợp hoạt động khác và quay lại mà không có phản hồi Tôi khuyên bạn không nên dựa vào tiêu chuẩn tinh khiết NHƯNG để xử lý bất cứ điều gì bạn nhận được phù hợp và duyên dáng - ít nhất theo cách thức mã của bạn không chỉ chết hoặc tạo ra kết quả không chính xác ... – Yahia

+0

@Yahia những gì tôi quan tâm là CHỈ HTTP Delimiting. tức là một tin nhắn dừng ở đâu và tin nhắn tiếp theo sẽ bắt đầu? – unixman83

+0

bạn đã đọc nhận xét đầy đủ của tôi chưa? – Yahia

Trả lời

14

Một cơ thể là không bắt buộc đối với tất cả các mã 4xx lỗi:

Trừ khi trả lời một yêu cầu HEAD, máy chủ NÊN bao gồm một thực thể chứa một lời giải thích về tình hình lỗi, và cho dù đó là một tình trạng tạm thời hoặc vĩnh viễn.

Tương tự cho các 5xx:

Trừ khi trả lời một yêu cầu HEAD, máy chủ NÊN bao gồm một thực thể chứa một lời giải thích về tình hình báo lỗi ...

(NÊN có nghĩa là thực sự, họ nên, nhưng nó không phải là PHẢI.)

Các thông báo 1xx không chứa một cơ thể xa như tôi có thể nói. 201 (ngoài số 204205) không phải có nội dung. Các 3xx là một túi hỗn hợp, nhưng một cơ thể là tùy chọn cho rất nhiều người trong số họ.

Nguồn: HTTP/1.1: Status Code definitions.

Quy tắc cho thông tin về độ dài tin nhắn được mô tả trong HTTP Message - 4.4 Message Length. Nó không phải là chính xác tầm thường.

+0

nếu chúng không có phần thân, chúng có chứa tiêu đề 'Content-Length: 0' không? Làm cách nào để phân định chúng bằng các kết nối liên tục? – unixman83

+0

@ unixman83: được chỉnh sửa với liên kết đến các quy tắc về độ dài của tin nhắn. – Mat

Các vấn đề liên quan