zoukankan      html  css  js  c++  java
  • node发送邮件


     

    app.js

    //发送邮件
    var nodemailer = require('nodemailer');  
    var transporter = nodemailer.createTransport({  
      service: 'qq',  
      auth: {  
        user: '470539167@qq.com',  
        pass: 'XXXXXXXXXXXXX' //授权码,通过QQ获取  
      
      }  
      });  
      var mailOptions = {  
        from: '470539167@qq.com', // 发送者  
        to: '122342881@qq.com', // 接受者,可以同时发送多个,以逗号隔开  
        subject: 'nodemailer2.5.0邮件发送', // 标题  
        //text: 'Hello world', // 文本  
        html: `<h2>nodemailer基本使用:</h2><h3>  
        <a href="http://blog.csdn.net/zzwwjjdj1/article/details/51878392">  
        http://blog.csdn.net/zzwwjjdj1/article/details/51878392</a></h3>`   
      };  
      
      transporter.sendMail(mailOptions, function (err, info) {  
        if (err) {  
          console.log(err);  
          return;  
        }  
      
        console.log('发送成功');  
      });

    app1.js

    //发送附件
    var nodemailer = require('nodemailer');  
    var transporter = nodemailer.createTransport({  
        service: 'qq',  
        auth: {  
            user: '470539167@qq.com',  
            pass: 'XXXXXXXXXXX' //授权码,通过QQ获取  
          
          }   
        });  
        var mailOptions = {  
            from: '470539167@qq.com', // 发送者  
            to: '122342881@qq.com', // 接受者,可以同时发送多个,以逗号隔开 
          subject: 'nodemailer2.5.0邮件发送', // 标题  
          //text: 'Hello world', // 文本  
          html: `<h2>nodemailer基本使用:</h2><h3>  
          <a href="http://blog.csdn.net/zzwwjjdj1/article/details/51878392">  
          http://blog.csdn.net/zzwwjjdj1/article/details/51878392</a></h3>`,  
          attachments:[  
            {  
              filename : 'package.json',  
              path: './package.json'  
            },  
            {  
              filename : 'content',  
              content : '发送内容'  
            }  
          ]  
        };  
        
        transporter.sendMail(mailOptions, function (err, info) {  
          if (err) {  
            console.log(err);  
            return;  
          }  
        
          console.log('发送成功');  
        });

    nodejs模块nodemailer基本使用-邮件发送(支持附件)

    标签: nodejs发送邮件nodemailer发送附件node.js

    2016-07-11 10:00 7065人阅读 评论(3) 收藏 举报

     分类:

    nodejs(50) 

    版权声明:本文为 zzwwjjdj1(意外金喜) 原创文章,非商用自由转载-保持署名-注明出处,谢谢。

    目录(?)[+]

    nodemailer是nodejs中的邮件发送模块,本文使用的版本为2.5.0

    --下载模块

    npm install nodemailer

    npm下载模块后,在项目中引入就可以使用: var nodemailer = require('nodemailer');

    以QQ邮箱为例.

    --获取授权码

    进入QQ个人邮箱, 设置-账户-开启服务POP3/SMTP服务,并生成授权码,现在获取授权码需要验证手机号等.

    http://img.blog.csdn.net/20160711101048165?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

    --后端代码

    [javascript] view plain copy

    1.  var nodemailer = require('nodemailer');  

    2.  var transporter = nodemailer.createTransport({  

    3.    service: 'qq',  

    4.    auth: {  

    5.      user: '527828938@qq.com',  

    6.      pass: 'ugxovfwhvxxxxxx' //授权码,通过QQ获取  

    7.    

    8.    }  

    9.    });  

    10.   var mailOptions = {  

    11.     from: '527828938@qq.com', // 发送者  

    12.     to: '452076103@qq.com', // 接受者,可以同时发送多个,以逗号隔开  

    13.     subject: 'nodemailer2.5.0邮件发送', // 标题  

    14.     //text: 'Hello world', // 文本  

    15.     html: `<h2>nodemailer基本使用:</h2><h3>  

    16.     <a href="http://blog.csdn.net/zzwwjjdj1/article/details/51878392">  

    17.     http://blog.csdn.net/zzwwjjdj1/article/details/51878392</a></h3>`   

    18.   };  

    19.   

    20.   transporter.sendMail(mailOptions, function (err, info) {  

    21.     if (err) {  

    22.       console.log(err);  

    23.       return;  

    24.     }  

    25.   

    26.     console.log('发送成功');  

    27.   });  

    --运行结果

    http://img.blog.csdn.net/20160711100230574?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

    --发送附件

    [javascript] view plain copy

    1.  var transporter = nodemailer.createTransport({  

    2.    service: 'qq',  

    3.    auth: {  

    4.      user: '527828938@qq.com',  

    5.      pass: 'ugxovfwhvxypxxxx'  

    6.    }  

    7.    });  

    8.    var mailOptions = {  

    9.      from: '527828938@qq.com', // 发送者  

    10.     to: '452076103@qq.com', // 接受者,可以同时发送多个,以逗号隔开  

    11.     subject: 'nodemailer2.5.0邮件发送', // 标题  

    12.     //text: 'Hello world', // 文本  

    13.     html: `<h2>nodemailer基本使用:</h2><h3>  

    14.     <a href="http://blog.csdn.net/zzwwjjdj1/article/details/51878392">  

    15.     http://blog.csdn.net/zzwwjjdj1/article/details/51878392</a></h3>`,  

    16.     attachments:[  

    17.       {  

    18.         filename : 'package.json',  

    19.         path: './package.json'  

    20.       },  

    21.       {  

    22.         filename : 'content',  

    23.         content : '发送内容'  

    24.       }  

    25.     ]  

    26.   };  

    27.   

    28.   transporter.sendMail(mailOptions, function (err, info) {  

    29.     if (err) {  

    30.       console.log(err);  

    31.       return;  

    32.     }  

    33.   

    34.     console.log('发送成功');  

    35.   });  

    --运行结果

    http://img.blog.csdn.net/20160725093017093?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

    将附件下载下来,打开

    /**

         * 设置邮件内容

         * @type {string}

         */

        var subject = '';      // 标题

        var text = '' ;   

        var html = '';     // 邮件内容

        /**

         * 创建服务

         */

        var transporter = nodemailer.createTransport({

            service: 'qq',

            port: 465, // SMTP 端口

            secureConnection: true, // 使用 SSL

            auth: {

                user: blogSystem.user,  //发件人

                pass: blogSystem.pass   //smtp密码

            }

        });

        /**

         * 设置参数

         * @type {{from: string, to: string, subject: string, text: string, html: string}}

         */

        var mailOptions = {

            from: blogSystem.user, // 发件地址

            to: email, // 收件列表

            subject: subject, // 标题

            //text和html两者只支持一种

            text: text, // 标题

            html: html // html 内容

        };

        /**

         * 发送邮件

         */

        transporter.sendMail(mailOptions, function(error, info){

            if(error){

                return console.log(error);

            }

            console.log('Message sent: ' + info.response);

        });

    http://img.blog.csdn.net/20160725093213878?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center

    这个发送附件应该算个不错的功能.

  • 相关阅读:
    webpack learn2-vue的jsx写法和postcss 1
    浏览器缓存旧的js文件或css文件导致没出现预期效果
    webpack learn1-webpack-dev-server的配置和使用3
    Python正课60 —— configparser模块
    Python正课59 —— json与pickle模块
    Python正课58 —— 小说阅读项目 初级
    Python正课57 —— ATM+购物车 前戏
    Python正课56 —— shutil模块
    Python正课55 —— sys模块
    Python正课54 —— os模块
  • 原文地址:https://www.cnblogs.com/zhangshuda/p/7640268.html
Copyright © 2011-2022 走看看