提问者:小点点

邮件正文增加双点


我正在使用C#代码通过邮件向我的客户发送账户激活链接。我正在使用亚马逊SES邮件服务。我的一些客户报告说,他们的链接不工作。我发现双点添加到链接。

链接1:

https://www.company.com/account/verify?email=customer.name@gmail.com&hashtoken=5574asfasfafb37d09aasdfa097

链接2:

https://www.company.com/account/verify?email=customer.name@gmail.com&hashtoken=5574asfasfafb37d09aasdfa097

链接3:

https://www.company.com/account/verify?email=customer..name@gmail.com&hashtoken=5574asfasfafb37d09aasdfa097

这些是我每次客户报告时发现的双点。当我使用我的localhost进行检查时,一切工作正常,链接生成正确。问题不是为所有客户生成的,而是随机生成的。

注意:我将在邮件模板中添加原始url。我不是在编码。我只编码邮件ID。

string activationLink = ConfigurationManager.AppSettings["hostUrl"].ToString()+ "/account/verify?email=" + HttpUtility.UrlEncode(email) + "&hashtoken=" + hashCode;

提前致谢

迪纳斯。


共2个答案

匿名用户

可能是内容的编码不合适。。。

尝试:

MailMessage.BodyEncoding=System.Text.Encoding.UTF8

有关详细信息,请参阅:

https://msdn.microsoft.com/en-us/library/system.net.mail.mailmessage.BodyEncoding(V=VS.110).aspx

匿名用户

我也发现了这个虫子。不幸的是,我没有找到解决方案,但我注意到它是由AlternateView.CreateAlternateViewFromString过程和QuotedPrintable编码引起的。此外,当行从点开始时,会添加额外的点。

我的解决办法是:

>

  • 发送前将邮件正文保存到文件中

    替换。。敬。在以。。开头的插队处。

    将文件移动到拾取文件夹