假设我有以下HTML代码:
<a href="mailto:me@example.org" target="_blank"></a>
据我所知,出于安全和隐私的原因,最佳实践告诉我必须在每个外部链接上添加rel="noopener noreferrer"
。我是否必须将mailto
链接视为外部链接?
答案 0 :(得分:0)
您可以在这里更好地理解它:https://mathiasbynens.github.io/rel-noopener/
简短的回答:不需要,因为该链接不会打开新的 < / p>
window
,而该新window.opener
可以(ab)使用上面链接中解释的mailto:
问题。
更新:如op指出的那样-我认为邮件客户端将处理navigator.registerProtocolHandler
链接的假设是错误的。可以使用rel="noopener noreferrer"
来使Web应用程序处理这些链接(或与此相关的任何其他链接)。因此,我要说的是,您应该像最初建议的那样添加{{1}}。
答案 1 :(得分:0)
在邮件中,我认为不会有任何不同。引荐来源标头包括源链接位置的URL-但是电子邮件没有 URL,因此在这种情况下,我希望引荐来源标头为空或不存在。
在电子邮件客户端中无法使用navigator.registerProtocolHandler
之类的东西,因为它们通常不支持任何类型的脚本。当您使用网络邮件客户端时,这可能会有所不同,但我尚未对此进行测试。
反之,如果您有一个网页,其中包含已发送到邮件客户端的mailto链接,则我再也没有见过使用客户端URL做任何事情的邮件客户端,因为它不是HTTP客户端并且不处理HTTP请求,而是处理协议切换。
总体设置rel="noopener noreferrer"
不会损害您的链接,但我怀疑从功能或安全的角度来看,它也不会做任何有用或有趣的事情。