禁用 HTML 编码 substitution_data
Disable HTML encoding of substitution_data
从 Mandrill 切换到 SparkPost 后,我们在使用 transmission
发送电子邮件时遇到了问题。在 Mandrill merge_vars
中没有 HTML 编码,我们有时会在其中放入 HTML,但是在 SparkPost 中 substitution_data
似乎是 HTML 编码的,并且它弄乱了一些我们的电子邮件。是否有全局设置允许关闭此功能或至少将其禁用 transmission
?
编辑: 我忘了说我们使用的是csharp-sparkpost库,这意味着它可能是与库直接相关的问题而不是SparkPost API,我需要进一步调查。
Edit2: 我测试了直接用JSON发送邮件,结果是一样的,所以我可以断定HTML编码完成了通过 SparkPost 而不是通过 c# 库。
您可以在替换变量中呈现 HTML,而无需通过在变量周围使用 3 个大括号进行转义。例如在您的传输中使用此:
{
"substitution_data": {
"firstName": "<em>Jimbo</em>"
},
"content": {
"html": "<p>Hi {{{firstName}}}</p>"
}
}
...您会在 HTML 邮件正文中看到:
<p>Hi <em>Jimbo</em></p>
SparkPost 参考文档中有更多详细信息:https://developers.sparkpost.com/api/#/introduction/substitutions-reference/escaping-html-values
从 Mandrill 切换到 SparkPost 后,我们在使用 transmission
发送电子邮件时遇到了问题。在 Mandrill merge_vars
中没有 HTML 编码,我们有时会在其中放入 HTML,但是在 SparkPost 中 substitution_data
似乎是 HTML 编码的,并且它弄乱了一些我们的电子邮件。是否有全局设置允许关闭此功能或至少将其禁用 transmission
?
编辑: 我忘了说我们使用的是csharp-sparkpost库,这意味着它可能是与库直接相关的问题而不是SparkPost API,我需要进一步调查。
Edit2: 我测试了直接用JSON发送邮件,结果是一样的,所以我可以断定HTML编码完成了通过 SparkPost 而不是通过 c# 库。
您可以在替换变量中呈现 HTML,而无需通过在变量周围使用 3 个大括号进行转义。例如在您的传输中使用此:
{
"substitution_data": {
"firstName": "<em>Jimbo</em>"
},
"content": {
"html": "<p>Hi {{{firstName}}}</p>"
}
}
...您会在 HTML 邮件正文中看到:
<p>Hi <em>Jimbo</em></p>
SparkPost 参考文档中有更多详细信息:https://developers.sparkpost.com/api/#/introduction/substitutions-reference/escaping-html-values