我不确定这是否是正确的论坛,但我试一试。
一个设备正在向我的代码发送一封电子邮件,我在其中尝试通过 python 中的套接字接收电子邮件,并通过 Messsage.get_payload()
调用解码电子邮件。然而。我总是\n.\n
在消息的末尾有一个。
如果同一设备将相同的消息发送到真正的电子邮件客户端(例如 gmail),我会得到正确的原始消息,但没有\n.\n
.
我想知道 SMTP/E-Mail 处理/发送中的这组特殊字符是什么,以及如何将其编码。
如果您查看SMTP 协议定义,您会看到,消息传输的 DATA 部分以<CRLF>.<CRLF>
.
这些只是换行符。在 GMail 中,它们将被处理并“显示”,因此您看不到它们。get_payload()
但它们仍然是电子邮件文本消息的一部分,因此返回它们是有意义的。