我写电子邮件类:
const pug = require('pug')
const nodemailer = require('nodemailer');
const htmlToText = require('html-to-text');
module.exports = class Email{
constructor(user, url) {
this.to = user.email;
this.firstName = user.name.split(' ')[0];
this.url = url;
this.from = `Feruz Atamuradow <${process.env.EMAIL_FROM}>`;
}
newTransport() {
if (process.env.NODE_ENV === 'production') {
return nodemailer.createTransport({
service: 'SendGrid',
auth: {
user: process.env.SENDGRID_USERNAME,
pass: process.env.SENDGRID_PASSWORD
}
});
}
return nodemailer.createTransport({
host: process.env.EMAIL_HOST,
port: process.env.EMAIL_PORT,
auth: {
user: process.env.EMAIL_USERNAME,
pass: process.env.EMAIL_PASSWORD
},
tls:{
rejectUnauthorized:false
} // and try this without
});
}
async send(template, subject) {
const html = pug.renderFile(`${__dirname}/../views/email/${template}.pug`, {
firstName: this.firstName,
url: this.url,
subject
});
const mailOptions = {
from: this.from,
to: this.to,
subject,
html,
text: htmlToText.fromString(html)
}
await this.newTransport().sendMail(mailOptions)
}
async sendWelcome() {
await this.send('welcome', 'Welcome to the Natours Family!');
}
async sendPasswordReset() {
await this.send('passwordReset', 'Your password reset token (valid for only 10 minutes)')
}
}
但我只得到了这个错误,我不理解这个错误。这意味着什么以及如何解决
错误:错误:在TCPConnectW连接ECONNREFUSED3.209.246.195:2525rap.after连接[作为完成](net.js:1146: 16){errno:-4078,代码:“ESOCKET”,系统调用:“连接”,地址:“3.209.246.195”,端口:2525,命令:“CONN”}
我发现这个“生产”错误:
错误:错误:消息失败:550发件人地址与已验证的发件人标识不匹配。在解决此错误之前,无法发送邮件。参观https://sendgrid.com/docs/for-developers/sending-email/sender-identity/查看SMTPConnection的发件人身份要求_SMTPConnection处的formatError(C:\Users\feruz\Desktop\complete\4-natours\node\U modules\NodeEmailer\lib\smtp connection\index.js:784:19)_SMTPConnection上的actionSMTPStream(C:\Users\feruz\Desktop\complete\4-natours\node\U modules\NodeEmailer\lib\smtp connection\index.js:1674:34)。(C:\Users\feruz\Desktop\complete\4-natours\node\u modules\nodemailer\lib\smtp connection\index.js:1152:22)位于SMTPConnection_SMTPConnection上的processResponse(C:\Users\feruz\Desktop\complete\4-natours\node\U modules\NodeEmailer\lib\smtp connection\index.js:947:20)_TLSSocket上的onData(C:\Users\feruz\Desktop\complete\4-natours\node\u modules\nodemailer\lib\smtp connection\index.js:749:14)。SMTP连接_位于TLSSocket的onSocketData(C:\Users\feruz\Desktop\complete\4-natours\node\U modules\NodeEmailer\lib\smtp connection\index.js:189:44)。在TLSSocket的readableAddChunk(\u stream\u readable.js:309:12)处的addChunk(\u stream\u readable.js:284:9)处发出(events.js:315:20)。可读。推送(\u stream\u readable.js:223:10){代码:“EMESSAGE”,响应:“550发件人地址与已验证的发件人身份不匹配。在解决此错误之前,无法发送邮件。请访问https://sendgrid.com/docs/for-developers/sending-email/sender-identity/要查看发件人身份要求,请执行响应代码:550,命令:'数据'}
IP,您使用的端口不正确或服务未在3.209.246.195的端口2525上运行。您应该再次检查它。
检查连接:ping3.209.246.195
检查服务(端口):telnet 3.209.246.195 2525
我试图学习反应,所以我有这个示例代码的全堆栈反应投票应用程序,我试图让它工作,但运行npm安装后,接着npm启动我收到以下错误,当我运行有人能帮我解决这个问题吗: 这是我的package.json: 最后是我的日志文件:
我对vue.js非常陌生,现在我正在尝试使用https://ly525.github.io/material-vue-daterange-picker/guide.html#Introduction中的vue.js datepicker 但是当我导入要使用的脚本时,我会得到这样的消息 “VMDDateRangePicker”已声明,但其值从未读取。TS(6133)找不到模块“v-md-date-r
CORS错误似乎是web领域中众所周知的问题。但我第一次尝试了FlitterWeb,我遇到了严重的错误。 下面的代码在iOS设备上运行时在应用程序版本中运行良好,但当我在Chrome上通过beta频道的web调试测试相同的代码时,它遇到了CORS错误。 其他stackoverflow的回答解释了如何用他们项目的服务器端文件解决CORS问题。但是我完全不知道什么是服务器的东西,以及如何处理他们的答案
我试图更新一个列,但在更新过程中总是有相同的错误,如果我不想禁用“安全更新模式”,我该如何解决这个问题?这是我的查询 错误代码:1175。您使用的是安全更新模式,并且您试图更新一个没有使用键列禁用安全模式的表,请在“首选项”中切换该选项-
git拉取代码报如下错误,什么原因导致得啊 Auto packing the repository in background for optimum performance. See “git help gc” for manual housekeeping. Unlink of file '.git/objects/pack' failed. Should I try again? (y/n)
问题内容: 我只是写一个小的Ajax框架来实现小项目的可重用性,但是我遇到了一个问题。基本上,我在发送请求时收到’ ‘错误,我不知道发生了什么。 HTML页面(已修剪但显示错误) PHP文件: 完整错误: 我只是看不到哪里出了问题,有什么想法吗? 问题答案: 异常“组件返回的故障代码:0x80070057(NS_ERROR_ILLEGAL_VALUE)”是由于将非法值传递到open方法的调用中引起