15

我已经在网上搜索过,我可以找到两种解决方案:

  1. 使用 URL-shortner。
  2. 使用括号< >允许插入空格。这仅适用于纯文本电子邮件。

我正在发送包含敏感信息的 HTML 电子邮件,例如密码恢复链接和自动身份验证链接。这些安全链接就其性质而言相当长。很容易超过 70 个字符或对电子邮件正文施加的任意限制。

显然我不能使用任何形式的 URL 缩短,因为它会绕过我用于链接的任何安全加密技术。

我想最大的问题是电子邮件客户端没有很好地包装链接。CSS3 技术支持漂亮的自动换行,因此 MS Outlook 永远不会支持这一点。

如何使链接不会在视觉上造成破坏,并且在电子邮件客户端出现故障时可能易于复制粘贴?

例子

如果链接似乎没有工作时,试图复制粘贴到浏览器:hxxp://开发/#AUTH / YoxOntz0Oj0ExOiJfcmFuG9tbmVzcyI7czoxOTI6kJsYkV0qMGMuZ1pFZVQ5YkRQNDZPR200Unl60dGlpNlhZZC9QcEVeH0lvV2NVVlpWWFcwWlF0VjRyc0p4akYzclJ0GTkJmSlgxco0aEtDS0FuTlBVSXAxUVhCcGdRNGpHMVl5UGZMRFVacDVSQ1BqcU0tKYlNxZ0FqYXpjTkNqTS9LV29xSk4ydGtyeFpNdV0c2VLMERUbEYwc08xUWU5aXR0GOXl0bVFpcjlXeGZjUE100S0o1L1FcmQ4MmhOdm5LUSI7fQ

补充笔记:

我不希望我的链接过期。如果我希望它们完全过期,我会有几个月的时间框架,而不是几个小时。这些链接不仅仅是密码恢复链接。

4

2 回答 2

28

您是否尝试过 Microsoft 专有的 word-break:break-all; ?

<td style=“word-break:break-all;”&gt;

这对我来说效果最好(跨供应商的最佳兼容性):

<p style="word-break:break-all;">
    <font style="word-break:break-all;">hxxp://really_long_link</font>
</p>

测试于:MS Office 2007/2010、outlook.com、hotmail.com、gmail.com、yahoo.com(雅虎显示不佳)


虽然这被编辑为包括在内<p>...</p>,但如果间距很重要,我强烈反对在 HTML 电子邮件中使用段落标签,因为电子邮件客户端对这些的解释不同。

于 2012-09-12T13:15:38.487 回答
3

在 Html 电子邮件中 ​​- 使用 html

如果您发送 html 电子邮件,有什么问题:

... <a href="long url">reset your password</a> ...

如果在您发送 html 电子邮件时链接被破坏 - 问题在于您发送电子邮件的方式,而不是收件人的电子邮件客户端。

使用较短的哈希

超长哈希(是哈希还是加密?)真的有必要吗?使用任何足够长的哈希值在过期之前不会被暴力破解就足够了。要求用户复制和粘贴显然要换行的字符串对用户没有帮助,它只是将开发问题推给用户。

于 2012-09-12T10:20:19.383 回答