有效电子邮件的最小字节数是多少(不特定于编程语言)
答案 0 :(得分:1)
因此,我只看了一个教程,回答了有关基本电子邮件的格式/结构的部分问题。我从以下命令开始
$ nc -C {smtp-server-fqdn} 25
这是对话的转储{已省略了秘密的参数设置}
220 {smtp-server-fqdn} ESMTP
EHLO {yourdomain.ext}
{smtp-server-fqdn}
250-PIPELINING
250-SIZE 40960000
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250 8BITMIME
HELO {yourdomain.ext}
250 {smtp-server-fqdn}
AUTH LOGIN
334 VXNlcm5hbWU6
{username|base64}
334 UGFzc3dvcmQ6
{password|base64}
235 2.7.0 Authentication successful
MAIL FROM: <someone@sender-fqdn>
250 2.1.0 Ok
RCPT TO: <someone@recipient-fqdn>
250 2.1.5 Ok
DATA
354 End data with <CR><LF>.<CR><LF>
From: "{VanitySenderName}" <someone@sender-fqdn>
To: "{VanityRecipientName}" <someone@recipient-fqdn>
Subject: {subject}
Date: {date}
{message body}
.
250 2.0.0 Ok: queued as {identifier}
QUIT
221 2.0.0 Bye
<ctrl>+<c>
所以要把它分解
电子邮件有效负载本身(在DATA
之后到.
之后的行)至少需要75个字节
From: <a@b>
To: <a@b>
Subject: c
Date: Sat, 20 Apr 2019 13:25:00 +0100
d
.
老实说,这几乎不是有效的电子邮件。根据{{3}},它确实有两个最小的附加字段,分别是从,到,主题,日期和正文。如果缺少任何这些,我想您的电子邮件提供商应该拒绝它们。
我发送给我的真实电子邮件和提供者(dreamhost)进行测试的实际正文为151字节,因为电子邮件是真实的,并且域长于字符。
更有趣的是,信封将其增加到468字节(对于带有auth的真实电子邮件,不包括服务器响应),但从理论上讲可能会更小(146字节,具有单个字符域,没有扩展名,仅适合实验室+内部使用)>
EHLO c
HELO c
AUTH LOGIN
a
b
MAIL FROM: <a@b>
RCPT TO: <a@b>
DATA
From: <a@b>
To: <a@b>
Subject: c
Date: Sat, 20 Apr 2019 13:25:00 +0100
d
.
QUIT
它小于1KB,因此适合嵌入式应用,但也缺少传输开销,并且缺少一些功能,例如多部分支持。
使用此功能所需要做的就是为自己配备一个套接字库以打开连接,base64编码器(用于纯用户+密码),日期字符串生成实用程序和基本的命令行技能。
这绝不是一个完整的答案,但是它回答了两种情况,并为了解初学者和掌握技术提供了必要的警告。
答案 1 :(得分:0)
这似乎不是编程问题,对吗?可能需要澄清,否则将被关闭。
每种情况下为数十字节。最小有效消息的40-45字节,带有附件的字节数接近100。有些取决于您的计算方式,例如当邮件为50个字节时,是否包括IMAP / POP登录过程的字节就很重要。
Date: 0:00:00 1 May 2019 -0000
From: a@l.is