0

我有一个奇怪的问题。

我在 Ubuntu 上使用 PEAR SMTP。当我发送此消息时:

--==Alternative_Boundary_x{da5ccf044317613d9f8e371455f292a6}x
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit

hello world - plain text test
--==Alternative_Boundary_x{da5ccf044317613d9f8e371455f292a6}x
Content-Type: text/html; charset="utf-8"
Content-Transfer-Encoding: 7bit

<i>hello world - html test</i>
--==Alternative_Boundary_x{da5ccf044317613d9f8e371455f292a6}x--

--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x
Content-Type: application/rtf; name="attachment.rtf"
Content-Disposition: attachment; filename="attachment.rtf"
Content-Transfer-Encoding: base64

e1xydGYxXGFuc2lcZGVmZjB7XGZvbnR0Ymx7XGYwXGZtb2Rlcm5cZnBycTFcZmNoYXJzZXQwIENv
dXJpZXIgTmV3O317XGYxXGZuaWxcZmNoYXJzZXQwIENvdXJpZXIgTmV3O319DQp7XGNvbG9ydGJs
IDtccmVkMFxncmVlbjBcYmx1ZTA7fQ0Ke1wqXGdlbmVyYXRvciBNc2Z0ZWRpdCA1LjQxLjE1LjE1
MTU7fVx2aWV3a2luZDRcdWMxXHBhcmRcY2YxXGxhbmcyMDU3XGYwXGZzMzIgSGVsbG8gd29ybGRc
Y2YwXGYxXGZzMjBccGFyDQpcY2YxXGlcZjBcZnMyNCBIZWxsbyB3b3JsZFxjZjBcaTBcZjFcZnMy
MFxwYXINClxiIEhlbGxvIHdvcmxkXHBhcg0KXGIwXHBhcg0KXHBhcg0KfQ0KAA==


--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x
--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x
Content-Type: text/xml; name="attachment.xml"
Content-Disposition: attachment; filename="attachment.xml"
Content-Transfer-Encoding: base64

PD94bWwgdmVyc2lvbj0iMS4wIj8+DQo8YXR0YWNoZW1udD5pbiAueG1sIGZpbGU8L2F0dGFjaGVt
bnQ+IA==


--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x--

我收到它时没有缺少一个--==Mixed_Boundary_x{e46253d4aad6aff75d74ef5eb064a626}x(看看哪里有两个连续的)。一些 PEAR smtp send 如何发送缺少该消息的消息。

但是,如果我使用 phplib 从 Windows 执行此操作,它会发送得很好并导致附件正常工作!

我知道我可以使用 PEAR Mime 邮件来处理这个问题,但不幸的是,我正在使用遗留代码,这不是一个选项,因为邮件已经包含所有编码。

我的问题是,为什么 PEAR 删除它?当不存在时,它会破坏附件吗?

谢谢

4

2 回答 2

0

我只能根据您提供的内容进行假设,但是您边界中的 Ascii-Art 非常好,但可能有点过头了。它包含根据规范不允许出现的字符,即大括号。也许是因为那里有一封无效的电子邮件,所以事情被丢弃了?

于 2013-04-25T13:31:24.770 回答
0

得到它的工作!事实证明,额外的线路根本不应该在那里,并且导致了各种问题。设法更改了一些代码,使其不存在并且一切都开始工作了!

于 2013-04-25T15:52:10.200 回答