特殊字符的编码不适用于 sendgrid 模板的电子邮件主题
Encoding for special characters not working in email subject for sendgrid templates
我一直在使用 sendgrid-ruby gem 发送电子邮件。电子邮件的主题未正确解码特殊字符。
例如。在电子邮件 How's it going
中发送此主题会在实际电子邮件 How's it going
中转换为此主题
我已经尝试将字符串编码为不同的格式,例如 ASCII,ISO_8859_1 但是 none 这个有效。
@body_json['personalizations'][0]['dynamic_template_data'] = {
'email_title': @email_title,
'content': @description,
'subject': "How's it going"
}
SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY']).client.mail._('send').post(request_body: @body_json)
电子邮件的主题应正确显示特殊字符,例如 ' & :
好的,在与 sendgrid 支持人员交谈后,我终于弄明白了。问题不在于我这边的 sendgrid 请求。每当制作模板时,始终确保 header 中的主题标题在双括号内,即 {{subject}}
。这将确保所有特殊字符在此块内工作。
您应该在主题部分使用三括号,即 {{{subject}}}
表示带有特殊字符的主题。
如果您使用双括号方法,您的字符串将被 HTML 编码。
从 SendGrid 存储库 https://github.com/sendgrid/sendgrid-nodejs/issues/741#issuecomment-422026634
检查这个 link
我一直在使用 sendgrid-ruby gem 发送电子邮件。电子邮件的主题未正确解码特殊字符。
例如。在电子邮件 How's it going
中发送此主题会在实际电子邮件 How's it going
我已经尝试将字符串编码为不同的格式,例如 ASCII,ISO_8859_1 但是 none 这个有效。
@body_json['personalizations'][0]['dynamic_template_data'] = {
'email_title': @email_title,
'content': @description,
'subject': "How's it going"
}
SendGrid::API.new(api_key: ENV['SENDGRID_API_KEY']).client.mail._('send').post(request_body: @body_json)
电子邮件的主题应正确显示特殊字符,例如 ' & :
好的,在与 sendgrid 支持人员交谈后,我终于弄明白了。问题不在于我这边的 sendgrid 请求。每当制作模板时,始终确保 header 中的主题标题在双括号内,即 {{subject}}
。这将确保所有特殊字符在此块内工作。
您应该在主题部分使用三括号,即 {{{subject}}}
表示带有特殊字符的主题。
如果您使用双括号方法,您的字符串将被 HTML 编码。
从 SendGrid 存储库 https://github.com/sendgrid/sendgrid-nodejs/issues/741#issuecomment-422026634
检查这个 link