Cocoa - 在mailto URL中指定内容类型以包含HTML

时间:2009-12-12 14:57:17

标签: cocoa

我想在点击按钮时打开用户的邮件客户端,并使用一些HTML内容填充邮件正文。

虽然我的代码成功地执行了此操作(使用mailto:URL方案),但HTML内容按原样显示(即HTML未格式化)。

有没有办法在打开Mail应用程序时指定我的邮件包含HTML?或者我可以像在邮件客户端中键入电子邮件时那样格式化数据吗?

感谢。

3 个答案:

答案 0 :(得分:1)

虽然某些mailto处理程序上可能有特定的扩展名,RFC 2368 - The mailto URL scheme的相关文本是

  

“body”hname应该包含消息的第一个text / plain正文部分的内容。


这里的hname是指mailto url的'body = some text'部分中的'body'。您基本上可以在mailto url中提供一整套电子邮件标题(名称=值对) - 由&分隔 - “正文”在rfc中具体定义,以指示以下文本(直到下一个分隔'&')是消息的text / plain部分。由于没有架构可以将多部分添加到电子邮件中,因此无法表达添加text / html部分所需的多部分。

向邮件添加text / html部分的唯一方法是要求您使用支持扩展uri语法的mailto处理程序,或者允许您以某种方式继续以编程方式向电子邮件添加内容。< / p>

答案 1 :(得分:1)

我不确定这一点,只是提供一些意见。 RFC2368显示如何格式化mailto链接,特别是如何包含标题。标题的一个示例是“Content-type”,在这种情况下,您希望将其设置为text / html。像

这样的东西
mailto:?Content-type=text/html

可能会奏效。

答案 2 :(得分:0)

我几天前在这里回答:How can I send a HTML email from Cocoa?