2012-11-08 17 views
6

Trong tiêu đề mime, khoảng trắng có được phép giữa tên trường đầu trang và dấu tách ':' không? Ví dụ, bao gồm:Không gian trắng được phép đặt tên trường tiêu đề betwee mime và dấu tách ':'

Content-Type: <value> 

Content-Type : <value> 

tương đương?

Ngoài ra, bạn có thể vui lòng cung cấp con trỏ tới tiêu chuẩn chất lượng được mô tả ở đâu không? Tôi đã kiểm tra một vài nhưng không tìm thấy nó.

Cảm ơn

Trả lời

3

Nó không phải là hoàn toàn rõ ràng cho dù đó là hoặc không được phép, bởi tiêu chuẩn. Tuy nhiên, các triển khai khác nhau về cách chúng xử lý khoảng trắng giữa các tên trường đầu trang và dấu hai chấm. Tôi rất khuyên bạn nên tránh khoảng trống ở đó nếu bạn có thể.

RFC for reference. This somewhat old article discusses the issue for HTTP headers, một tiêu chuẩn tương tự.

+0

Cảm ơn bạn đã trả lời. Tôi đang phân tích cú pháp các tin nhắn từ một máy chủ, vì vậy tôi đoán nó sẽ là khôn ngoan để cho phép khoảng trắng. –

+3

Cảm ơn con trỏ tài liệu. Nó nêu rõ rằng khoảng trống được cho phép. ** 3.1.4. CƠ SỞ L STRNH VỰC CẤU TRÚC Để hỗ trợ việc tạo và đọc các trường có cấu trúc, việc chèn miễn phí không gian trắng tuyến tính (cho phép gấp bằng cách thêm CRLF) được cho phép giữa các thẻ từ vựng. ** –

4

Phụ thuộc vào ý của bạn là 'được phép'. RFC 2822 (đã lỗi thời RFC822 1982) và 5322 (lỗi thời 2822) đặc biệt cấm chèn WS giữa tên trường và dấu hai chấm (đây không phải là tiêu chuẩn 'MIME', BTW). Lưu ý rằng : không phải là một dấu hiệu, và chỉ được tham chiếu như là một phần của một tên trường, ví dụ:

from = "From:" mailbox-list CRLF 

Tuy nhiên, RFC822 cổ đã cho phép không gian ở đây, và RFC mới nói rằng cú pháp lỗi thời "PHẢI được chấp nhận và phân tích cú pháp bởi một người nhận tuân thủ". Ví dụ: định nghĩa tiêu đề From: lỗi thời là

obs-from = "From" *WSP ":" mailbox-list CRLF 

Phần 4 bao gồm cú pháp lỗi thời. Tôi không thực sự cho phép cú pháp lỗi thời trong máy thu của riêng tôi và tôi chưa bao giờ gặp vấn đề gì.

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