首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.Net MailMessage是否自动折叠标题字段的长度超过RFC2822的最大长度?

.Net MailMessage是否自动折叠标题字段的长度超过RFC2822的最大长度?
EN

Stack Overflow用户
提问于 2010-08-24 00:30:37
回答 1查看 448关注 0票数 2

要开始,请参阅RFC 2822的2.1.1和2.2.3节

如果标题字段的内容超过最大长度限制,System.Net.Mail.MailMessage是否会自动折叠标题字段?RFC2822规定标题字段每行不得超过998个字符。为了解决这个问题,可以插入CRLF,让一个标题字段占据多行。

有什么想法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-08-24 01:53:01

至少在使用SmtpClient发送之前,MailMessage类不会执行任何自动折叠。只有在发送邮件时,.NET才会自动折叠报头字段以构造MIME邮件。您可以在消息发送后访问MailMessage.Headers进行检查。

根据报头字段是否需要预先编码,折叠可以在几个位置发生。例如,如果主题包含非US-ASCII字符,则必须以Base64或Q编码进行编码。在这种情况下,负责编码的类也会进行折叠。

如果您使用Reflector,您可以查看MailWriter类,它是执行折叠的类之一,并且至少在.NET 2.0中,它使用RFC2822中指定的建议的默认行限制,即每行78个字符。

每行字符不能超过998个字符,并且不能超过78个字符,不包括CRLF.

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3549598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档