【发布时间】:2021-06-28 13:47:56
【问题描述】:
我正在尝试在 SendGrid 动态模板中添加社交媒体链接,特别是它是通过 LinkedIn 分享内容的链接。社交媒体链接调用 RESTful API,因此需要提供许多参数,就像表单一样。问题是,除非这些参数是“百分比编码”,否则 SendGrid 的编辑器会产生错误。
这是一个 URL,旨在使电子邮件收件人能够将成就证书添加到他们的 LinkedIn 个人资料中。它是在these instructions 之后创建的。
https://www.linkedin.com/profile/add?startTask=FS_Cert&name=Certificate%20Of%20Achievement&organizationId=26650704&issueYear=2021&issueMonth=6&certId=20210622-001&certUrl=https://certificates.nextid.com/certificate?id%3D291b71fb-79cb-4db4-bfa6-108d0c9eb2d6
这个 URL 几乎可以工作,但是 - 因为它包含一个嵌套 URL 作为最后一个参数 - 我需要将最终的 '=' 更改为 '%3D'。通过这个微小的修改,我可以打开像 Thunderbird 这样的电子邮件客户端并将其粘贴为 HTML(即作为链接的目标),并且可以将证书添加到收件人的 LinkedIn 个人资料中。我还可以添加图片使其成为可点击按钮。
但是,如果我将此 URL 粘贴到 SendGrid 中的动态模板中,与号“&”会导致编辑器反对并显示错误:“预期命名实体,没有得到”。我将它们更改为 %26 并以这个修改后的 URL 结束,这不会在 SendGrid 编辑器中导致任何错误。
https://www.linkedin.com/profile/add?startTask=FS_Cert%26name=Certificate%20Of%20Achievement%26organizationId=26650704%26issueYear=2021%26issueMonth=6%26certId=20210622-001%26certUrl=https://certificates.nextid.com/certificate?id%3D291b71fb-79cb-4db4-bfa6-108d0c9eb2d6
很遗憾,当您将该 URL 粘贴到浏览器中时,该 URL 不再有效,并且在 SendGrid 电子邮件中创建的链接无法正确解析。 RESTful API 调用被执行,但参数不通过。
有没有人建议如何将 RESTful API URL 插入到 SendGrid 电子邮件中而不会导致编辑器拒绝它。也许是一些 Javascript?
【问题讨论】:
标签: sendgrid sendgrid-templates