Sendgrid更改链接的href

raf*_*b21 8 email node.js sendgrid express

我将Nodejs与Express结合使用,并且正在通过Sendgrid发送电子邮件,但是Sendgrid正在更改href链接

var emailText = '<!DOCTYPE html><html><head><meta charset="UTF-8"></head><body><a href="https://www.google.com">Here</a></body></html>'
var from_email = new helper.Email('contact@test.com');
var to_email = new helper.Email('contact@test2.com');
var subject = 'Test';
var content = new helper.Content("text/html", emailText)
var mail = new helper.Mail(from_email, subject, to_email, content);                                            
var request = sg.emptyRequest({
    method: 'POST',
    path: '/v3/mail/send',
    body: mail.toJSON(),
});
sg.API(request, function(error, response) {
    if (error) {
        console.log('Error response received');
    }
    console.log(response.statusCode);
    console.log(response.body);
    console.log(response.headers);
});
Run Code Online (Sandbox Code Playgroud)

当电子邮件到达时,将出现以下链接:

https://u4006412.ct.sendgrid.net/wf/click?upn=rOQ9fjZGp5r0JyNfoC02LbL.....

有人可以帮我解决这个问题吗?

小智 20

您可以专门针对一个链接关闭 Sendgrid 跟踪。
为此,您必须clicktracking="off"href标签之前添加

像这样做

<a clicktracking="off" href='https://mysite/auth/'>My Site</a>


McB*_*McB 9

与 @israa-saifullah 所说的类似,您可以clicktracking="off"直接在 html 链接中声明,但如果您通过 sg api 发送,则trackingSettings可以在单个消息上设置一个属性,您可以在其中指定是否要单击并打开- 启用跟踪。clickTracking是重写 URL 的内容,您可以在基于 HTML 或文本的级别指定它。例如,这会禁用所有跟踪,从而使电子邮件中的 URL 保持不变。

const msg = {
 to: TO_ADDRESSS,
 from: {
   name: FROM_NAME,
   email: FROM_ADDRESSS,
 },
 subject: SUBJECT,
 text: TEXT_VERSION,
 html: HTML_VERSION,
 trackingSettings: {
  clickTracking: {
    enable: false,
    enableText: false
  },
  openTracking: {
    enable: false
  }
}
Run Code Online (Sandbox Code Playgroud)

如果您不想覆盖帐户级别(在 SG 仪表板中)的跟踪,而只是针对特定用例,这会很有帮助。

文档在这里


swe*_*sor 8

我相信这是由sendgrid的网址点击跟踪功能引起的。它会重定向到您想要的资源,但看起来并不漂亮。您可以在sendgrid中将其关闭,但是它将禁用该帐户发送的所有电子邮件的URL跟踪。如果您要与诸如bit.ly之类的第三方链接跟踪器集成在一起,或者您的GA处于锁定状态,则这可能不会打扰您。

以下是有关sendgrid中功能的更多信息:https ://sendgrid.com/docs/User_Guide/Settings/tracking.html

将其关闭,然后查看您的电子邮件外观。

更新:Sendgrid中的白标

Sendgrid还具有白标功能,使您可以从一个子域中提供URL,同时仍可跟踪其服务器上的点击/打开情况。如果您从UX的角度考虑链接的美观性或可感知的安全性,则可以采用这种方法。

查看他们的白标概述链接白标文档页面。确保遵循sendgrid关于电子邮件中域使用的建议。这确保了交货的高成功率。

  • 请记住,有时此更改需要一些时间才能生效。不多,我只花了5分钟,但是如果你改完之后马上做测试,也足以让你觉得不行了。 (2认同)

小智 7

可以通过sendgrid设置进行更改,访问路径:settingns -> 跟踪 -> 点击跟踪 -> 禁用

跟踪配置