node.js - Nodemailer 错误 : Recipient command failed: 553 5. 7.1:发件人地址被拒绝:不属于用户

标签 node.js email smtp nodemailer

我一直在寻找答案,但我还没有发现我的错误。 所以也许你可以帮助我解决我在尝试通过 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 选项。现在它就像一个魅力!

关于node.js - Nodemailer 错误 : Recipient command failed: 553 5. 7.1:发件人地址被拒绝:不属于用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69221631/

相关文章:

email - Go:连接到 SMTP 服务器并在一个连接中发送多封电子邮件?

python - Gmail SMTP 拒绝我的登录

http - 为何需要不同的电子邮件协议(protocol)?

node.js - 如何在 Mongoose 中为部分字符串匹配创建搜索查询?

php - WooCommerce - 从 functions.php 文件发送新订单/客户发票电子邮件

python - 如何使用 Python 以 Gmail 作为提供商发送电子邮件?

ios - 从我自己的应用程序中启动 Apple Mail 应用程序?

javascript - AngularJS 中的下拉菜单

angularjs - 与 Electron 中的 Web 服务集成

node.js - 在 Mocha ExpressJS 测试期间获取 "Error: the string "不是有效的 BCrypt 哈希 ."was thrown, throw an Error :)"