href中的mailto:我应该添加rel noopener,noreferrer吗?

时间:2018-07-05 14:28:36

标签: html security mailto privacy

假设我有以下HTML代码:

<a href="mailto:me@example.org" target="_blank"></a>

据我所知,出于安全和隐私的原因,最佳实践告诉我必须在每个外部链接上添加rel="noopener noreferrer"。我是否必须将mailto链接视为外部链接?

2 个答案:

答案 0 :(得分:0)

您可以在这里更好地理解它:https://mathiasbynens.github.io/rel-noopener/

简短的回答:不需要,因为该链接不会打开新的window,而该新window.opener可以(ab)使用上面链接中解释的mailto:问题。 < / p>

更新:如op指出的那样-我认为邮件客户端将处理navigator.registerProtocolHandler链接的假设是错误的。可以使用rel="noopener noreferrer"来使Web应用程序处理这些链接(或与此相关的任何其他链接)。因此,我要说的是,您应该像最初建议的那样添加{{1}}。

答案 1 :(得分:0)

在邮件中,我认为不会有任何不同。引荐来源标头包括源链接位置的URL-但是电子邮件没有 URL,因此在这种情况下,我希望引荐来源标头为空或不存在。

在电子邮件客户端中无法使用navigator.registerProtocolHandler之类的东西,因为它们通常不支持任何类型的脚本。当您使用网络邮件客户端时,这可能会有所不同,但我尚未对此进行测试。

反之,如果您有一个网页,其中包含已发送到邮件客户端的mailto链接,则我再也没有见过使用客户端URL做任何事情的邮件客户端,因为它不是HTTP客户端并且不处理HTTP请求,而是处理协议切换。

总体设置rel="noopener noreferrer"不会损害您的链接,但我怀疑从功能或安全的角度来看,它也不会做任何有用或有趣的事情。