Кодировка для специальных символов, не работающих в теме письма для шаблонов sendgrid
Я использовал гем sendgrid-ruby для отправки электронных писем. Тема письма не декодирует специальные символы должным образом. Например. Отправка этой темы на электронную почту How's it going
переводит на это в фактическом электронном письме How's it going
Я пытался кодировать строку для различных форматов, таких как ASCII, ISO_8859_1, но ничего из этого не работает.
@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)
В теме письма должны отображаться специальные символы, такие как ' &:
0 ответов
Вы должны использовать тройные скобки в тематическом разделе, т.е. {{{subject}}}
для предметов со специальными символами. Если вы используете подход с двойными скобками, ваша строка будет закодирована в HTML.
Проверьте эту ссылку из репозитория SendGrid https://github.com/sendgrid/sendgrid-nodejs/issues/741
Итак, после разговора с поддержкой sendgrid я смог понять это. Проблема не в запросе sendgrid с моей стороны. При создании шаблона всегда убедитесь, что заголовок темы в заголовке находится в двойных скобках, т.е. {{subject}}
, Это обеспечит работу всех специальных символов внутри этого блока.