[英]ActionMailer in Ruby on Rails breaks when given an email address that has special characters
我正在使用ActionMailer发送电子邮件,当给定一个正常的电子邮件地址时它可以工作,这是我的代码段
logger = Logger.new('logfile.log')
logger.info(@user.email)
mail(
charset: "UTF-8",
to: @user.email,
from: @from,
subject: @subject
)
在日志中,它会显示带有特殊字符的电子邮件地址。 但是然后我进入开发日志,并在邮件对象中看到此内容,其他所有内容都正确
To: =?UTF-8?B?w7FAw7EuY29tPg==?=
我试图将其包装在引号中,并使用其他格式,例如:
("\\"#{@user.name}\\" <#{@user.email}>")
转换为:
"name name" <test_ñ@yahoo.com>
这些也没有运气,我只会得到类似的胡言乱语
=?UTF-8?Q?=22name_name=22_<test=5F=C3=B1@yahoo.com>?=
还尝试使用"test_ñ"@yahoo.com
相同的结果:
=?UTF-8?Q?=22test=5F=C3=B1=22@yahoo.com>?=
我在这里想念什么? 与编码配置有关吗?
那不是胡言乱语。 那就是MIME编码( RFC 2047 )。 一切安好。
您可以将该行粘贴到MIME在线解码器中,并确保将其解码To: my_user@exampl.com
(已编辑的电子邮件地址)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.