脚本桥,Apple Mail,HTML和头文件

时间:2012-06-20 02:44:32

标签: html cocoa email html-email scripting-bridge

我已经能够通过脚本桥和苹果邮件破解我的方式,现在可以从我的可可程序发送电子邮件了。现在,我正在尝试发送HTML邮件,并遇到了麻烦。简而言之,我已经生成了一个NSString,其中包含从open html标记到slash-html close标记的完整HTML代码,其中包含所有好处。

但是,当我通过脚本桥将其作为内容传递时,我最终得到的是一封电子邮件,我可以在其中阅读HTML代码...我会说它是纯文本,但链接仍然显示为可点击链接,所以这并不完全正确。

如果我在Safari中打开代码,则HTML会正确显示。

我想也许它可能与电子邮件中的标题信息有关,但是如果有办法通过脚本桥设置它,我还没有找到办法做到这一点。再次,由于链接是可点击的,我认为它们可能不是问题?

如果有办法将标题信息设置为“Content-Type:text / html; charset = ISO-8859-1”和“MIME-Version:1.0”并且有人知道如何,请赐教:)< / p>

如果没有,有没有人有任何建议?我确信我必须遗漏一些东西,我希望它很简单。

*编辑*

我尝试在Safari中打开我的HTML文件并使用FILE&gt;电子邮件内容然后在Apple Mail中创建一个新电子邮件。这封新邮件可以HTML格式查看。因此,我知道必须这样做。

然后我将该电子邮件发送给自己,以及非HTML电子邮件。

仅检查两个文件的标题信息,发现这两封电子邮件的内容类型相同,列为:

multipart/alternative; boundary="Apple-Mail=_D0859731-3A0F-459E-9673-DEC0FC6503BF"

当然,每封发送的电子邮件的ID字符串都不同......

但是,在查看原始源时,HTML文件确实有第二个内容类型,它在HTML代码之前指定“text / html”(我解释为表示multipart / alternative只是指示邮件)应用程序以查找其他内容类型标记...

2 个答案:

答案 0 :(得分:1)

以下是您的需求:

Open Source Cocoa/Cocoa-Touch POP3/SMTP library?

(功能的邮件库)

答案 1 :(得分:0)

据我所知,Apple不允许您通过脚本桥直接发送HTML电子邮件。我可以推测他们对此不满的原因(垃圾邮件,安全性等),但它似乎就是这样。

解决方法是在Safari中打开HTML,然后使用Scripting Bridge将“将此页面的电子邮件发送到邮件”。这将在Mail.app中创建一个包含HTML代码的新外发邮件。

注意:然而,我注意到的一个副作用是,当使用脚本桥接器在Safari创建后将收件人添加到电子邮件中时,会为每个收件人创建一个带有内嵌代码的附加DIV标记。因此,默认情况下,在显示的每个DIV标记之前和之后添加换行符,HTML代码从页面的下方开始为每个添加的收件人开始。解决方法是在HTML代码中使用CSS来覆盖DIV标记的默认显示行为。我在这里更详细地解释了它:

Scripting Bridge adds unwanted HTML code when adding recipient to mail