我将 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);
});
当电子邮件到达时,会出现以下链接:
https://u4006412.ct.sendgrid.net/wf/click?upn=rOQ9fjZGp5r0JyNfoC02LbL.....
有人可以帮我解决这个问题吗?
原文由 rafaelcb21 发布,翻译遵循 CC BY-SA 4.0 许可协议
我相信这是由 sendgrid 的 URL 点击跟踪功能引起的。它将重定向到您想要的资源,但看起来并不漂亮。您可以在 sendgrid 中将其关闭,但它将禁用对该帐户发送的所有电子邮件的 URL 跟踪。如果您正在与诸如 bit.ly 之类的第 3 方链接跟踪器集成,或者您的 GA 处于锁定状态,这可能不会打扰您。
以下是有关 sendgrid 中功能的更多信息: https ://sendgrid.com/docs/User_Guide/Settings/tracking.html
将其关闭并查看您的电子邮件的外观。
更新:Sendgrid 中的白标
Sendgrid 还具有白标签功能,允许您从您的子域之一提供 URL,同时仍跟踪通过其服务器的点击/打开。如果您从用户体验的角度担心链接的美观或感知安全性,那么这可能是要走的路。
查看他们 的 whitelabeling 概述 和 链接 whitelabeling 文档页面。请务必遵循 sendgrid 关于电子邮件中域使用的建议。这确保了交付的高成功率。