【问题标题】:social media link inside a SendGrid dynamic templateSendGrid 动态模板内的社交媒体链接
【发布时间】: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


    【解决方案1】:

    使用正确的 URL 转义字符并关闭 SendGrid 链接跟踪已解决此问题。

    1. 因为我们在 HTML 中分隔参数(SendGrid 编辑器使用 HTML),所以“&”的正确转义字符是“&”而不是“%26”。它只会成为已发送电子邮件中的 URL。我们仍然需要使用百分比替换来将最后一个参数中的 '=' 更改为 %3D,因为等号嵌入在 certUrl 参数的 URL 中。我们还需要将空格转换为“%20”。所以最后修改的链接应该是:
    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
    
    1. 但是,由于 SendMail 链接跟踪功能会修改 URL,因此这会变得混乱(搞砸)。 URL 参数总是被截断并且没有传递到 LinkedIn 个人资料表单,这显然是由于在浏览器中重写了 SendGrid 跟踪 URL。所以我在链接标签中添加了参数“clicktracking=off”,现在它可以工作了(并且更容易调试)。这是最终版本:
    <a clicktracking=off
    href="https://www.linkedin.com/profile/add?startTask=FS_Cert&amp;name=Certificate%20Of%20Achievement&amp;organizationId=26650704&amp;issueYear=2021&amp;issueMonth=6&amp;certId=20210622-001&amp;certUrl=https://certificates.nextid.com/certificate?id%3D291b71fb-79cb-4db4-bfa6-108d0c9eb2d6">
    

    【讨论】:

      猜你喜欢
      • 2014-02-24
      • 1970-01-01
      • 2017-02-26
      • 1970-01-01
      • 2018-01-02
      • 1970-01-01
      • 2023-02-01
      • 1970-01-01
      • 2015-12-13
      相关资源
      最近更新 更多