node.js发送邮件

CodeStellarHorizon
• 阅读 3919

步骤一,开启邮箱服务

在邮箱设置里面开启POP3/SMTP/IMAP服务,如图

node.js发送邮件

步骤二,安装nodemailer插件

npm install -save nodemailer

步骤三,构造如下代码

   const nodemailer=require('nodemailer');
let transporter=nodemailer.createTransport({
    host:'smtp.126.com',
    secure:true,
    auth:{
        user:'*****@126.com',
        pass:'*****'

    },
});

let mailOptions={
    from:'******@126.com',
    to:'******@163.com',
    subject:'天气',
    text:'今天天气很好!',
    html:'<b>今天天气很好!</b>'
};

transporter.sendMail(mailOptions,(err,info)=>{
    if(err){
        console.log(err);
    }
    else{
        console.log(info);
    }
});

步骤四,测试

node.js发送邮件

注意点

发送程序中,subject,和主题需要相一致,不然导致如下错误,504,SUM 信封发件人和信头发件人不匹配

{ Error: Message failed: 554 DT:SPM 126 smtp7,DsmowAA3nqryKy1Zc0oRJw--.15930S2 1496132596,please see http://mail.163.com/help/help_spam_16.htm?ip=111.74.215.148&hostid=smtp7&time=1496132596
    at SMTPConnection._formatError (D:\node\likeread\node_modules\nodemailer\lib\smtp-connection\index.js:557:19)
    at SMTPConnection._actionSMTPStream (D:\node\likeread\node_modules\nodemailer\lib\smtp-connection\index.js:1385:34)
    at SMTPConnection._responseActions.push.str (D:\node\likeread\node_modules\nodemailer\lib\smtp-connection\index.js:907:22)
    at SMTPConnection._processResponse (D:\node\likeread\node_modules\nodemailer\lib\smtp-connection\index.js:706:20)
    at SMTPConnection._onData (D:\node\likeread\node_modules\nodemailer\lib\smtp-connection\index.js:509:14)
    at TLSSocket._socket.on.chunk (D:\node\likeread\node_modules\nodemailer\lib\smtp-connection\index.js:461:47)
    at emitOne (events.js:96:13)
    at TLSSocket.emit (events.js:188:7)
    at readableAddChunk (_stream_readable.js:176:18)
    at TLSSocket.Readable.push (_stream_readable.js:134:10)
  code: 'EMESSAGE',
  response: '554 DT:SPM 126 smtp7,DsmowAA3nqryKy1Zc0oRJw--.15930S2 1496132596,please see http://mail.163.com/help/help_spam_16.htm?ip=111.74.215.148&hostid=smtp7&time=1496132596',
  responseCode: 554,
  command: 'DATA' }
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
菜鸟阿都 菜鸟阿都
4年前
python实现邮件发送
前言使用python的第三方库yagmail实现邮件发送的功能yagmail官网文档:第一步:申请一个邮箱作为发送邮箱此处以网易邮箱为例,因为使用python代码实现邮件的发送,需要开启邮箱的授权密码功能,用生成的授权密码作为发送邮件的密码,以下步骤为开启网易邮箱的授权密码功能。第二步:安装yagmail库languagepipinstally
Irene181 Irene181
4年前
最全总结!聊聊 Python 发送邮件的几种方式
1\.前言邮件,作为最正式规范的沟通方式,在日常办公过程中经常被用到我们都知道Python内置了对SMTP的支持,可以发送纯文本、富文本、HTML等格式的邮件本文将聊聊利用 Python发送邮件的3种方式2\.准备以126邮箱为例,在编码之前,我们需要开启SMTP服务然后,手动新增一个授权码其中,账号、授权码和服务器地址用于连接登录
Irene181 Irene181
4年前
最全总结!聊聊 Python 发送邮件的几种方式
1\.前言邮件,作为最正式规范的沟通方式,在日常办公过程中经常被用到我们都知道Python内置了对SMTP的支持,可以发送纯文本、富文本、HTML等格式的邮件本文将聊聊利用 Python发送邮件的3种方式2\.准备以126邮箱为例,在编码之前,我们需要开启SMTP服务然后,手动新增一个授权码其中,账号、授权码和服务器地址用于连接登录
Karen110 Karen110
3年前
手把手教你使用Python轻松搞定发邮件
前言现在生活节奏加快,人们之间交流方式也有了天差地别,为了更加便捷的交流沟通,电子邮件产生了,众所周知,电子邮件其实就是客户端和服务器端发送接受数据一样,他有一个发信和一个收信的功能,电子邮件的通信协议为SMTP,POP3,IMAP,而且他们都属于tcp/ip协议,像我们经常用到的QQ邮箱,网易邮箱,这些都是同样的模式。准备编辑器:sublime
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Stella981 Stella981
3年前
Spring Boot demo系列(七):邮件服务
2021.2.24更新1概述SpringBoot整合邮件服务,包括发送普通的文本邮件以及带附件的邮件。2邮箱选择这里选择的是QQ邮箱作为发送的邮箱,当然也可以选择其他的邮箱,只是具体的配置不一样。使用QQ邮箱的话,需要在个人设置中开启SMTP服务:!在这里插入
Stella981 Stella981
3年前
Django中Admin中的一些参数配置
设置在列表中显示的字段,id为django模型默认的主键list_display('id','name','sex','profession','email','qq','phone','status','create_time')设置在列表可编辑字段list_editable
Stella981 Stella981
3年前
Jenkins设置运行结果自动发送邮箱通知
Jenkins设置运行结果自动发送邮箱通知1获取邮箱授权码登录邮箱选择“设置”开启IMAP/SMTP服务开启后需要通过手机发送短信到线上获取授权码!(https://img2018.cnblogs.com/blog/1798505/201909/1798505201909280544535181522354728.png)例如我
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
5个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(