javascript - 关于nodeemailer问题
巴扎黑
巴扎黑 2017-04-10 17:38:49
[JavaScript讨论组]

主要功能:采用nodeemailer写一个发送邮件的功能
环境:

  1. nodemailer 版本2.3.0,

  2. node版本4.1.2
    代码如下:

var transporter = nodeemialer.createTransport({
    host: "smtp.163.com",
    secureConnection: true, // use SSL
    port: 25, // port for secure SMTP
    auth: {
        user: "*****@163.com",
        pass: "*****"
    }
});
var mailOptions = {
    from: '"share__us" <****@163.com>',
    to: '***@msn.com',
    subject: 'Hello',
    text: 'Hello world',
    html: '<b>Hello world</b>',
    attachments: [{
        filename  : '',
        content : ''
    },{
        filename  : '',
        path : ''
    }]
}
transporter.sendMail(mailOptions, function(error, info){
    if(error){
        console.log(error);
    }else{
        console.log('Message sent : ' + info.response);
    }
});
transporter.close();

运行后,会返回如下错误:

{ [Error: Invalid login: 550 User has no permission]
  code: 'EAUTH',
  response: '550 User has no permission',
  responseCode: 550 }

但我的用户名与密码是正确的,请问各位大神,我的代码有什么问题吗?或者我少了哪些步骤?

详细答案如下:

网易新注册的邮箱smtp验证用的是授权码,不是密码
设置->POP3/SMTP/IMAP

然后在createTransport时使用授权密码

巴扎黑
巴扎黑

全部回复(1)
PHPz

我记得163邮箱的smtp密码不是你的账号密码。。。。去看下163邮箱的设置。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号