Nodemailer Error: Recipient command failed: 553 5.7.1: Sender address rejected: not owned by user
Nodemailer Error: Recipient command failed: 553 5.7.1: Sender address rejected: not owned by user
我一直在寻找答案,但我还没有找到我的错误。
所以也许你可以帮助我解决我在尝试通过 nodemailer 从未知邮件发送邮件到我的个人邮件时遇到的这个错误(对于我网站上的联系表):
api/mail.js
import nodemailer from 'nodemailer';
import {valueMissing} from "../../utils/functions";
export default function sendMail (req,res){
if (valueMissing(req.body.name) || valueMissing(req.body.subject) ||
valueMissing(req.body.message) || valueMissing(req.body.mail))
return res.status(202).json({ success: false });
else {
const transporter = nodemailer.createTransport({
port: 465,
host: 'smtp.xxx.xxx',
auth: {
user: process.env.MAIL_USER,
pass: process.env.MAIL_PW
},
});
const message = {
from: {
name: req.body.name,
address: req.body.mail
},
to: process.env.MAIL_USER,
subject: req.body.subject,
text: req.body.message
};
transporter.sendMail(message,error => {
if(error) {
console.log(error);
return res.status(202).json({
success: false
});
} else return res.status(200).json({
success: true
});
})
}
}
我以前使用过 nodemailer,但那时我是从我的邮箱向另一个人发送邮件,而不是相反。在我的研究中,我发现了这个教程 - Creating A Contact Form With JavaScript / Nodemailer。我在做什么不同?似乎它应该以任何一种方式工作...
提前致谢:)
好的,对于有同样问题的任何人,我找到了解决方案:事实上,Nodemailer 无法从其他人的电子邮件发送邮件。所以我将消息选项更改为以下内容:
const message = {
from: {
name: req.body.name,
address: process.env.MAIL_USER,
},
to: process.env.MAIL_USER,
subject: req.body.subject,
text: req.body.message,
replyTo: req.body.mail
}
基本上我把邮件从我的邮箱发送到同一个邮箱。为了保留此人的邮件以供回复,我添加了 replyTo 选项。现在它就像一个魅力!
我一直在寻找答案,但我还没有找到我的错误。 所以也许你可以帮助我解决我在尝试通过 nodemailer 从未知邮件发送邮件到我的个人邮件时遇到的这个错误(对于我网站上的联系表):
api/mail.js
import nodemailer from 'nodemailer';
import {valueMissing} from "../../utils/functions";
export default function sendMail (req,res){
if (valueMissing(req.body.name) || valueMissing(req.body.subject) ||
valueMissing(req.body.message) || valueMissing(req.body.mail))
return res.status(202).json({ success: false });
else {
const transporter = nodemailer.createTransport({
port: 465,
host: 'smtp.xxx.xxx',
auth: {
user: process.env.MAIL_USER,
pass: process.env.MAIL_PW
},
});
const message = {
from: {
name: req.body.name,
address: req.body.mail
},
to: process.env.MAIL_USER,
subject: req.body.subject,
text: req.body.message
};
transporter.sendMail(message,error => {
if(error) {
console.log(error);
return res.status(202).json({
success: false
});
} else return res.status(200).json({
success: true
});
})
}
}
我以前使用过 nodemailer,但那时我是从我的邮箱向另一个人发送邮件,而不是相反。在我的研究中,我发现了这个教程 - Creating A Contact Form With JavaScript / Nodemailer。我在做什么不同?似乎它应该以任何一种方式工作...
提前致谢:)
好的,对于有同样问题的任何人,我找到了解决方案:事实上,Nodemailer 无法从其他人的电子邮件发送邮件。所以我将消息选项更改为以下内容:
const message = {
from: {
name: req.body.name,
address: process.env.MAIL_USER,
},
to: process.env.MAIL_USER,
subject: req.body.subject,
text: req.body.message,
replyTo: req.body.mail
}
基本上我把邮件从我的邮箱发送到同一个邮箱。为了保留此人的邮件以供回复,我添加了 replyTo 选项。现在它就像一个魅力!