电子邮件标记 - Gmail修改<script>标记以添加额外字符串"3D"

Jag*_*ngh 10 html email ruby-on-rails google-schemas

我正在使用Ruby on Rails生成电子邮件.如电子邮件标记文档中所述,我修改了我的(*.html.haml)模板以包含电子邮件标记的模式.下面的代码来自我的邮件模板:

%script{ type: "application/ld+json" }
  {
  "@context" : "http://schema.org",
  "@type" : "FoodEstablishmentReservation",
  "reservationNumber" : "#{reservation.id}",
  ...
  }
Run Code Online (Sandbox Code Playgroud)

我还将电子邮件的发件人和收件人修改为此处提到的用于在开发模式下测试架构的相同电子邮件ID .

当我在Gmail收件箱中收到电子邮件时,我发现之前没有任何不同之处.当我查看电子邮件的原始消息时,它显示:

Return-Path: <breezebhoewal@gmail.com>
...
Date: Wed, 21 Dec 2016 13:14:45 +0530
From: breezebhoewal@gmail.com
To: breezebhoewal@gmail.com
...
Mime-Version: 1.0
Content-Type: multipart/alternative; boundary="--==_mimepart_585a32ecf2d94_143673fd10d24128893014"; charset=UTF-8
Content-Transfer-Encoding: 7bit

----==_mimepart_585a32ecf2d94_143673fd10d24128893014
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
...
<script type=3D'application/ld+json'>
  {
  "@context" : "http://schema.org",
  "@type" : "FoodEstablishmentReservation",
  "reservationNumber" : "<reservation-id>",
  ...
  }
</script>
...
Run Code Online (Sandbox Code Playgroud)

现在,如果我<script>电子邮件标记测试程序中验证此标记内容,它会显示"不存在结构化数据",但只要我从<script>标记中删除"3D" 并制作它<script type='application/ld+json'>,它就会正确地为所有字段提取结构化数据.

所以,我无法弄清楚为什么这个额外的字符串"3D"被添加到HTML?是因为哈姆尔?还是Gmail呢?是否有任何我可以修复以在开发环境中测试此电子邮件标记.如果需要更多信息,请与我们联系.

Sar*_* Ak 0

您可以尝试在标头中添加此元标记

 <meta charset="charset=ISO-8859-1"/>
Run Code Online (Sandbox Code Playgroud)