资讯专栏INFORMATION COLUMN

使用nodejs发送邮件

BingqiChen / 2563人阅读

摘要:最近一些天在学,我觉得这门语言这门简单又很好玩,为什么不把这门语言当做程序员学语言的敲门砖了,而选择那么复杂的语言。

最近一些天在学python,我觉得这门语言这门简单又很好玩,为什么不把这门语言当做程序员学语言的敲门砖了,而选择那么复杂的C语言。在学python的过程中,有学习到python有可以发送邮件的功能,我就在想node会不会也有发送邮件的模块工具了,果不其然,让我找到一个,也就是本文所要介绍到的nodemailer了,npm官方地址:https://www.npmjs.com/package...

python发送邮件简单实现

不多说,直接看代码:

#-*-coding:utf8-*-
import smtplib
from email.mime.text import MIMEText

mail_host="smtp.126.com"    //设置主机,如果是QQ请换成smtp.qq.com
mail_user="xxxxxxxx@126.com"        //账户
mail_pass = "这里填入授权码,下面会说到"    //邮箱授权码,非密码

me = "Leo Angel"+"<"+mail_user+">" //发件人
to = "xxxxxxxxx@qq.com"                 //收件人
msg = MIMEText("Test",_subtype="plain",_charset="utf-8")
msg["Subject"] = "Hello"    //主题
msg["From"] = me        //发件人
msg["To"] = to            //收件人
try:
    server = smtplib.SMTP()        //创建一个SMTP对象
    server.connect(mail_host)        //连接主机
    server.login(mail_user,mail_pass)    //登录账号
    server.sendmail(me,to,msg.as_string())    //发送邮件
    server.close()                //关闭SMTP对象
    print "邮件发送成功"            //打印发送成功提示信息
except Exception as e:
    print e            //打印错误日志
开启SMTP服务

我以QQ邮箱126邮箱举例:
QQ邮箱:
首先打开你的QQ邮箱,点击设置,选择邮箱设置第二项帐户,鼠标下拉到POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服务,开启第一项POP3/SMTP服务,如下图所示,开启成功后会生成授权码给你,对应代码的pass字段,选择填入即可

126邮箱:
同QQ邮箱基本一样,登陆之后点击设置下拉菜单POP3/SMTP/IMAP,勾选POP3/SMTP服务,成功之后会生成授权码,填入对应的pass字段

发送邮件代码如下:

首先创建项目文件夹,然后再里面打开终端输入npm install nodemailer --save安装nodemailer模块,新建app.js文件,输入以下代码,最后执行node app,成功之后到你收件人邮箱就可以发现收到了一条新信息

var mail = require("nodemailer");//引入nodemailer模块
var transport = mail.createTransport({
    host:"smtp.qq.com",        //主机,如果是126邮箱,请换成smtp.126.com
    secureConnection:true,    //使用安全连接
    port:465,            //STMP端口号
    auth:{
        user:"xxxxxxxx@xx.com", //你的邮箱账号
        pass:"填对应邮箱的授权码"    //授权码
    }
});
var options ={
    from:""YOURNAME" xxxxxxxx@xx.com",//YOURNAME将变为你邮件的名字
    to:"xxxxxxxx@126.com,xxxxxxxx@qq.com,xxxxxx@gmail.com",//收件人
    subject:"Hello",    //主题
    text:"World",        //正文
    attachments:[{        //附件
        filename:"附加文件",    //附件名字
        path:"./app.js"        //附件路径
    }]
};
transport.sendMail(options,function (err, res) {
    if(err) console.log(err);
    else console.log(res);
});

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/44245.html

相关文章

  • NodeJS发送邮件

    摘要:首先是要创建一个用于发送邮件的实例参数属性属性太多了就只写一些关键的属性连接的端口号,一般就是你用于发送邮件的服务器的,比如的是这个就是和老版本不一样的地方了。 其实这个功能很多人都写过了,但是网上有的代码不能用,版本较老,因此写下自己摸索的方法来实现。 配置篇 首先需要安装nodemailer库 npm install nodemailer//默认会安装最新的版本。 关于这个库的文档...

    Mertens 评论0 收藏0
  • nodeJS实现基于Promise爬虫 定时发送信息到指定邮件

    摘要:也就是说,我的篇文章的请求对应个实例,这些实例都请求完毕后,执行以下逻辑他的目的在于对每一个返回值这个返回值为单篇文章的内容,进行方法处理。 英国人Robert Pitt曾在Github上公布了他的爬虫脚本,导致任何人都可以容易地取得Google Plus的大量公开用户的ID信息。至今大概有2亿2千5百万用户ID遭曝光。 亮点在于,这是个nodejs脚本,非常短,包括注释只有71行。 ...

    xuweijian 评论0 收藏0
  • 4.6 Nodemailer系统发用户邮件-博客后端Api-NodeJs+Express+Mysql

    摘要:发邮件组件使用发送邮件咱们日常开发中有时会遇到需要系统推送邮件给相关用户例如注册后发送激活邮箱等等,此时就需要用到首先,去云云云邮件推送以为例是一个基于的邮件服务模块。 NodeMailerNodejs发邮件组件Nodemailerhttp://blog.fens.me/nodejs-em...Node.js使用NodeMailer发送邮件http://www.jianshu.com/...

    shadowbook 评论0 收藏0
  • 4.6 Nodemailer系统发用户邮件-博客后端Api-NodeJs+Express+Mysql

    摘要:发邮件组件使用发送邮件咱们日常开发中有时会遇到需要系统推送邮件给相关用户例如注册后发送激活邮箱等等,此时就需要用到首先,去云云云邮件推送以为例是一个基于的邮件服务模块。 NodeMailerNodejs发邮件组件Nodemailerhttp://blog.fens.me/nodejs-em...Node.js使用NodeMailer发送邮件http://www.jianshu.com/...

    svtter 评论0 收藏0
  • 周报小系统,支持导出和邮件提醒

    摘要:并利用提供的云引擎服务实现在周五给全员发送邮件提醒填写周报,周六周日分别再次对未填人员发送邮件进行填写提醒。虽然提供的免费云引擎,本身就支持服务,但是免费版是做测试用的,会自动休眠,不够稳定,经常挂掉。 This just is a README. showImg(https://segmentfault.com/img/remote/1460000013260535);showImg...

    cheng10 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<