我正在尝试在主题行中发送包含中文/台湾字符的电子邮件。用户输入的电子邮件内容正确显示为中文,但主题行出现问题。
我正在使用Rails 3.0.9,并将其配置为现在通过我的Gmail帐户发送。所有这些都有效,但也许Google弄乱了我的主题行?
这是我邮件程序中的代码片段:
mail(:to => lead_email,
:subject => "=?utf-8?B?" + Base64.encode64(@club.offers.first.title) + "?=",
:from => from_email,
:content_type => "text/html; charset=utf-8",
:reply_to => '[email protected]',
:content_transfer_encoding => '8bit'
).deliver
这就是我收到的电子邮件标题中的内容。
Subject: 期待很快就可以在俱樂部看到你喔!
Mime-Version: 1.0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
当我在GMail中阅读电子邮件时,会看到上面的不可读主题行,但是电子邮件内容中的中文文本呈现得很好。需要注意的一件事是,Content-Transfer-Encoding似乎已从我设置为“ quoted-printable”的“ 8bit”更改。
如何使中文字符显示在主题行而不是
期
? 最佳答案
尝试使用其他字符集?标头中的内容行中的内容类型为UTF-8。
尝试将其更改为其他字符集,例如big5GB
是中华人民共和国的官方标准,Big5
是台湾的事实上的标准。
将“ big5”放在您在主题行中看到“ utf-8”的位置:
mail(:to => lead_email,
:subject => "=?utf-8?B?" + Base64.encode64(@club.offers.first.title) + "?=",
:from => from_email,
:content_type => "text/html; charset=big5",
:reply_to => '[email protected]',
:content_transfer_encoding => '8bit'
).deliver
http://en.wikipedia.org/wiki/Big5