当我尝试使用npm包sendgrid / mail发送电子邮件时,有时会弹出此错误消息。大多数情况下都可以使用。
{错误:连接ETIMEDOUT 169.45.89.179:443 在TCPConnectWrap.afterConnect上[完整完成](net.js:1104:14)errno:'ETIMEDOUT',代码:'ETIMEDOUT',系统调用:'connect',
地址:“ 169.45.89.179”,端口:443} [bugsnag]报告了 未处理的拒绝…错误:错误:连接ETIMEDOUT 169.45.89.179:443 在SendGrid.send.then.catch.e(/home/leoqiu/foodnome-api/build/src/utils/emailHelpers.js:143:11)
我的节点服务器使用以下代码将其发送出去:
export const sendVerifyMail = (to: string, token: string) =>
SendGrid.send({
to,
from: { email: '..' },
subject: 'Verify you..',
dynamic_template_data: {
header: 'Verify your account',
text:
'Please use the button below to continue the process.',
c2a_link: `${serverAddress}/api/user-account/verify?token=${token}`,
c2a_button: 'Verify'
},
template_id: 'd-0f6411434fbc4896bf389e3945affd5d'
} as any)
.then(d => d)
.catch(e => {
console.log(e);
throw new Error(e);
});
答案 0 :(得分:1)
除非您同时遇到一般的连接问题,否则我认为这不是您的代码或网络方面的问题。
ip 169.45.89.179解析为sendgrid的域,因此这可能是一个问题,要再次检查,您可以将ping连续设置为8.8.8.8或运行其他网络监控来确保连接正常是稳定的。
如果您的连接不是问题,我将向其报告您准备共享的所有日志,您的源IP以及发生超时错误的时间,这可能对他们有用