首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么'nodemailer‘没有发送任何消息?

为什么'nodemailer‘没有发送任何消息?
EN

Stack Overflow用户
提问于 2021-01-25 23:53:59
回答 1查看 36关注 0票数 0

代码如下:

代码语言:javascript
复制
var nodemailder = require('nodemailer');
var from = nodemailder.createTransport({
    service: "gmail",
    auth:{
        user: 'user***@gmail.com',
        pass: 'pass***'
    }
});
var options = {
     from: 'user***@gmail.com',
     to: 'user***@gmail.com',
     subject: 'sometext',
     text: 'messageContext',
};
from.sendMail(options, function (error, info) {
     if (error) {
            console.log(error);
     } else {
            console.log('Email sent: ' + info.response);
     }
});

如果我使用Windows -它可以工作,当我尝试在Ubuntu (16)上启动时-我没有收到任何错误消息等,但邮件没有收到。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-01-26 01:57:01

如果是这种情况,我相信SMTP服务无法连接到端口25上的连接。

运行服务器将如下所示:

代码语言:javascript
复制
$ telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 xxxx.de ESMTP Postfix
QUIT
221 2.0.0 Bye
Connection closed by foreign host.

如果没有服务器在此端口上侦听,它将如下所示:

代码语言:javascript
复制
$ telnet localhost 25
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused

这意味着您的服务可能未运行或未启用。您需要首先在端口25上启用/运行此服务。

此外,根据nodemail文档,您还可以使用sendmail二进制文件:

代码语言:javascript
复制
'sendmail' alternative

Alternatively if you don't want to use SMTP but the sendmail

命令然后将属性sendmail设置为true (如果该命令不在默认路径中,则将其设置为sendmail的路径)。

代码语言:javascript
复制
nodemailer.sendmail = true;

or

nodemailer.sendmail = '/path/to/sendmail';

If sendmail is set, then SMTP options are discarded. 

作为参考,https://nodemailer.com/transports/sendmail/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65888093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档