Sendgrid。如何添加一个动态链接到电子邮件模板?

问题描述 投票:0回答:1

我想在我的邮件模板中添加一个链接,看起来像这样。

<a href={{url}}>click here</>

上面的链接是在 "designer "中添加了一个 "自定义 "链接。这个链接的值我输入的是{{url}}。

我在dynamic_template_data中传递了一个url值,像这样。

const msg = {
  to: savedAdmin.email,
  from: process.env.EMAIL_ADDRESS,
  templateId: process.env.SENDGRID_NEW_ADMIN_TEMPLATE_ID,
  personalizations: [
    {
      to: [{email: savedAdmin.email}],
      dynamic_template_data: {
        name: savedAdmin.first_name,
        url: process.env.CMS_URL,
        email: savedAdmin.email,
        password: randomPassword,
      },
    },
  ],
};

但是,当我在收件箱中收到邮件时,url的值是这样的。

http://url9905.myweb.shop/ls/click?upn=BMmHdsRoNrbb0-2FMI-2BBVvCjpDiCceHLG5U2u5OCf29QV6iCtfuvZYId1FE95cTz9uyMY31z9fQ7iR-2BPgq-2FkquvxdAPC0oMKiLa3DRglYUSVP-2FRmYbDQ-2BdFGnczXk75K3Ym8rSodsrAy-2BfNDJwqA7RDeemPFjepjRsUdci9CA6Y0-....

我怎么才能让它工作呢?

sendgrid sendgrid-api-v3
1个回答
4
投票

Sendgrid正在用一个中间重定向来替换您的链接,以便进行点击跟踪。这个用户 遇到了同样的问题。在Sendgrid仪表板上,进入设置->跟踪,然后点击右侧的点击跟踪的编辑图标,并禁用该功能。


2
投票

看起来这个问题的原因是由于没有包括https前缀到你的链接。 请将你的动态变量从 "cms.mywebshop.com "改为"http:/cms.mywebshop.com"或"https:/cms.mywebshop.com。". 我相信这应该能解决你的问题 请让我知道。

我能够测试在我的一个 href上没有https前缀,虽然标签没有显示为纯文本,但它确实无法转发。有可能是Sendgrid的人把链接显示为纯文本,以便于解决问题。

© www.soinside.com 2019 - 2024. All rights reserved.