如何使用 Sendgrid 和 Node.js 发送本地主机 link
How to send localhost link using Sendgrid and Node.js
我想使用 sendgrid 和 node.js 发送电子邮件以添加电子邮件验证功能。我在 sendgrid 仪表板中设置了一个事务模板,但我不知道如何将 url 插入到我的 html 中(在内部我知道他们为此使用把手)。模板看起来像(仅重要部分):
模板
<a target='_blank' href="{{verificationLink}}" class='link2' style="color:#474747">Verify Email Address</a>
我为动态属性添加了 {{verificationLink}}
,我的节点请求如下所示:
Node.js代码
public async sendEmailVerificationLink(data: any) {
const {firstName, email} = data;
const token = Math.random().toString(36).substr(2);
const message: MailData = {
from: EmailCreator.EMAIL_FROM,
personalizations: [{
to: [{
email,
}],
dynamicTemplateData: {
"firstName": firstName,
"verificationLink": `http://localhost:4200/verify-email?token=${token}`
},
}],
templateId: 'd-8ca7682e287d47428c351e7854d98567'
};
return sendgridMail.send(message);
}
但是当我收到电子邮件时,link 看起来像:
sendgrid 的一项功能是跟踪您嵌入消息中的 link 的点击率。那个长 URL 是点击跟踪器:它从他们的服务器跳转到您的服务器。
对于电子邮件验证,您不需要那种跟踪。当我用 sendgrid 做这种事情时,我不使用他们的模板功能,而是在告诉 sendgrid 逐字发送之前在我的程序中格式化消息。
您也可以告诉它您不想跟踪那个 link 或整个模板。我不知道该怎么做,抱歉。
我想使用 sendgrid 和 node.js 发送电子邮件以添加电子邮件验证功能。我在 sendgrid 仪表板中设置了一个事务模板,但我不知道如何将 url 插入到我的 html 中(在内部我知道他们为此使用把手)。模板看起来像(仅重要部分):
模板
<a target='_blank' href="{{verificationLink}}" class='link2' style="color:#474747">Verify Email Address</a>
我为动态属性添加了 {{verificationLink}}
,我的节点请求如下所示:
Node.js代码
public async sendEmailVerificationLink(data: any) {
const {firstName, email} = data;
const token = Math.random().toString(36).substr(2);
const message: MailData = {
from: EmailCreator.EMAIL_FROM,
personalizations: [{
to: [{
email,
}],
dynamicTemplateData: {
"firstName": firstName,
"verificationLink": `http://localhost:4200/verify-email?token=${token}`
},
}],
templateId: 'd-8ca7682e287d47428c351e7854d98567'
};
return sendgridMail.send(message);
}
但是当我收到电子邮件时,link 看起来像:
sendgrid 的一项功能是跟踪您嵌入消息中的 link 的点击率。那个长 URL 是点击跟踪器:它从他们的服务器跳转到您的服务器。
对于电子邮件验证,您不需要那种跟踪。当我用 sendgrid 做这种事情时,我不使用他们的模板功能,而是在告诉 sendgrid 逐字发送之前在我的程序中格式化消息。
您也可以告诉它您不想跟踪那个 link 或整个模板。我不知道该怎么做,抱歉。