zoukankan      html  css  js  c++  java
  • nodemailer发送邮件遇到的一些问题

    使用nodemailer发送邮件一直困惑了我好几天,百度谷歌都没有找到的几个问题,方便大家排查。

    我使用的是0.7.1版本,其他的版本好像报错,就没用。

    错误信息:Mail from command failed - 501 mail from address must be same as authorization user

    经检查问题出现在第12行代码,这里必须要填写发件人的邮箱地址,因为我以为第7行已填写过邮箱地址,错以为第12行只要随便写个名称,所以一直报错。

    如果需要加上名称用<>把邮箱包住,如:carter<carter@mingbomedia.com>

    以下为可运行代码:

     1 var nodemailer = require("nodemailer");
     2 var transport = nodemailer.createTransport('SMTP', {
     3     host: "smtp.tq52.com",
     4     secureConnection: true,
     5     port: 465,
     6     auth: {
     7         user: "lele@tq52.com", // 账号
     8         pass: "********" // 密码
     9     }
    10 });
    11 var data = {
    12     from: 'lele@tq52.com',
    13     to: '308012546@qq.com',
    14     subject: 'Hello world',
    15     text: 'Hello world, I am a test mail!',
    16     html: '<b>Hello world, I am a test mail!</b>'
    17 };
    18 transport.sendMail(data, function(err, res){
    19     if (err) {
    20         console.log(err);
    21     } else {
    22         console.log('Message sent: ' + res.message);
    23     }
    24     transport.close(); // 如果没用,关闭连接池
    25 });

    如果采用如下service的方式去写,修改service的文件路径在node_modules/nodermailer/lib/wellknown.js。

    1 var transport = nodemailer.createTransport('SMTP', {
    2     service: 'qq', //use well known service
    3     auth: {
    4         user: 'hankewins@qq.com',
    5         pass: '123456'
    6     }
    7 });

  • 相关阅读:
    uboot配置和编译过程详解
    gcc 与 g++的区别
    ARM交叉编译器GNUEABI、NONE-EABI、ARM-EABI、GNUEABIHF等的区别
    SPI UART区别是什么
    C#获取时间戳的封装方法函数+使用获取当前时间时间戳
    C#中Timer定时器的使用示例
    Linux查看文件夹大小
    Python对象的创建和赋值
    使用mutt自动发送邮件
    pyTorch安装
  • 原文地址:https://www.cnblogs.com/liuyt/p/5478229.html
Copyright © 2011-2022 走看看