0

我正在使用 NotesDocument.send() 发送 HTML 邮件。使用服务器端 javascript,将 HTML 代码 (html) 添加到 NotesDocument (doc) 中,如下所示:

session.setConvertMime(false);
...
var mimeBody:NotesMIMEEntity=doc.createMIMEEntity("Body");
var stream:NotesStream=session.createStream();
stream.writeText(html);
mimeBody.setContentFromText(stream,"text/html;charset=\"UTF-8\"",NotesMIMEEntity.ENC_NONE);

发送文档是可行的,但如果 HTML 内容的长度超过一定大小,则生成的邮件会在多个位置包含字符串“!\n”。我认为 MIME 转换可能存在问题,并在 notes.ini 中添加了“MailConvertMimeOnTransfer=0”。不幸的是,这没有帮助。

有谁知道如何解决这个问题?

PS:我也尝试使用 OpenNTF 的 Mark Leusink 的 HTMLMail 类(http://openntf.org/XSnippets.nsf/snippet.xsp?id=create-html-mails-in-ssjs-using-mime),但我也面临上述问题。

更新:问题只发生在发送给互联网用户的邮件中。Notes 用户收到正确的 HTML 邮件。

4

1 回答 1

0

该问题可以通过更改 MIME 实体的编码来解决。我刚刚将编码从 NotesMIMEEntity.ENC_NONE 更改为NotesMIMEEntity.ENC_IDENTITY_8BIT,现在执行 NotesDocument.send() 时不再将“!\n”字符串插入邮件正文。

所有功劳都归功于提供此解决方案的 stwissel。

于 2013-10-01T10:26:43.443 回答