我有一个帐户注册功能,在用户输入个人数据后,将通过生成的链接向该客户发送确认电子邮件。问题是:因为链接太长,它被分为两行(第二行来自字符76),第二行不属于第一行(用户无法点击整个链接)。我认为这个问题可能来自自动换行或类似的东西
在Outlook Express中,在menu->工具 - >选项 - >发送 - > HTML设置下,我们可以通过更改值来设置电子邮件内容应包含在每行中的字符数。有没有办法使用核心Java Mail设置此功能?
提前谢谢。
答案 0 :(得分:1)
自动换行由观众(即Outlook Express)完成,而不是在发送电子邮件时。我猜你正在发送纯文本电子邮件,并依赖观众来尝试识别它包含链接。尝试发送HTML邮件并使用''
答案 1 :(得分:0)
不,JavaMail是一个允许您通过Java发送/接收电子邮件的库。它不是像Outlook / Outlook Express或Thunderbird这样的应用程序。
也就是说,在调用JavaMail发送电子邮件之前,您可以编写执行格式化的代码。
答案 2 :(得分:0)
首先,您无法在java邮件中设置设置以更改客户端的格式。
其次,虽然我的解决方案可能不是问题的最佳答案。它应该有助于你遇到的问题。
在将链接添加到邮件正文之前,请确保您;
将链接放在新行上。 “\ n”;)
使用URL缩短API(如bitlyj)为bit.ly制作一个缩短URL的方法。添加缩短的链接和walla!
msg.setContent("This is an example of adding a shortened URL\n" + shortLink("http://www.longlink.com") + "\n", "text/plain");
public String shortLink(String link) { Url url = as("Username", "APIKey").call(shorten(link)); return url.getShortUrl(); }
使用这种方法,你不应该在自动换行中遇到任何问题。