Mailto:URL的元素快速指南

您可以在电子邮件链接中指定默认主题,正文文本和更多内容

如果您让您的网站访问者通过mailto:链接向您发送电子邮件,您已经为他们提供了一种建立联系的特别方便的方式。 他们所要做的就是点击并开始输入他们的信息。

但这种便利并不是所有强大的mailto:存在的。 假设您想要定义一个默认主题,例如,让您知道该电子邮件是通过您网站上的mailto:链接发送的。 或者,如果访问者点击某个特定链接(例如,您可以使用它创建一个简单的调查),也许您想为该正文建议默认文本。

让我们来看看这些先进但绝不是难以使用的mailto:work。

Mailto:URL

一个mailto URL基本上由三部分组成。 先来

收件人的电子邮件地址(即紧随邮件地址)可能实际上是多个地址。 多个地址用逗号分隔(就像您在电子邮件客户端的收件人:行中使用它一样)。 有趣的是,如果mailto:链接完全不包含默认收件人地址,则它也是有效的(并且有效)。

因此,在mailto:之后直接放置默认主题(使用?subject = )是完全合法的。 我们可以创建一个包含默认主题但不包含默认收件人的邮件: mailto:?subject = Doc,%20do%20da%20dance

当然,最好的事情是最后的。 在mailto:URL的“header”部分,我们几乎可以做任何事情。 理论上可以使用RFC 2822中指定的任何标题名称和值 - Internet消息格式。

我们不仅可以指定“主题:”行,还可以指定“抄送:”(发送抄送)或“密件抄送:”(密件抄送)。

X-头

特别感兴趣的是“发明”任意标题行的能力。 他们只需要以“X-”开头就是合法的 - 也许你知道无处不在的“X-Mailer:”标题。 再加上一个电子邮件客户端,可以根据任意的标题行进行过滤,这使得分类和过滤成为可能。

所有标题行的指定方式与我们从主题已知的相同方式中指定:[标题名称] = [标题值],例如: XZ = Y。

不幸的是,这种X-Header几乎不能与浏览器和电子邮件客户端结合使用,所以你不能依靠它们来发送。

默认消息文本

最后,还有一个特殊的标题名称: body

使用这个“标题”,您可以指定将显示在电子邮件正文中的文本。 mailto:URL方案的正文部分主要用于短文本消息。

由于链接在HTML中的工作方式,当为mailto:链接构造默认主体时,必须对特殊字符进行编码。 例如,必须将空格转换为“%20”,换行符变为“%0D%0A”。

幸运的是,您不必记住这些编码或手动完成。 改用JavaScript或方便的mailto:URL编码器。

组合标题

但是,如何让多个“标题”部分,例如默认主题和默认消息文本? 这是通过&符号完成的。

第一个标题在问号后面跟着收件人的地址:“?”。 所有未来的标题都以任何顺序连接,并以&符号分隔。

例如(换行符只是为了确保整齐的外观;当然,您不会将它们插入URL中):
邮寄地址:recipient@example.com
?主题=哈!
&X-梅勒= Baluba中
&身体=哈!%0D%0ABla!