郵件配置

2018-01-19 19:28 更新

Nodemailer 是一個簡單易用的 Node.JS 郵件發(fā)送模塊(通過 SMTP,sendmail,或者 Amazon SES),支持 unicode,你可以使用任何你喜歡的字符集。

安裝nodemailer模塊

npm install nodemailer@0.7.1 --save

注意1:nodejs默認安裝最新的nodemailer版本,如果版本和nodejs版本不匹配則會提示你下降版本,本例的適配版本是0.7.1

郵件賬號配置

在src/common/config/下新建mail.js,配置代碼如下:

export default {
  //發(fā)送郵件配置
  host:"smtp.qq.com",
  port: 465,
  domains:'["qq.com"]',
  account:'262248861@qq.com',
  pass: "XXXXXXXX",
  from:"262248861@qq.com",
  route_on: true,
  encoding: "utf-8"
};

注意2:QQ郵箱的密碼不是你的登錄密碼,而是在設(shè)置/賬戶里開啟SMTP后騰訊給出的一串第三方登錄密碼

新建mail控制器,在controller里配置:

var nodemailer  = require("nodemailer");
let mailer=think.config("mail");
var smtpTransport = nodemailer.createTransport("SMTP", {
    host: mailer.host,
    secureConnection: true,
    port: mailer.port,
    requiresAuth: true,
    domains: mailer.domains,
    auth: {
        user: mailer.account, // 賬號
        pass: mailer.pass // 密碼
    }
});
smtpTransport.sendMail({
    from: mailer.account,
      to: "390039626@qq.com,livisky@163.com", // 收件列表
 subject: 'Node.JS通過SMTP協(xié)議從QQ郵箱發(fā)送郵件',
    html: 'have a try!'
},function(err, res) {
    console.log(err, res);
});

刷新頁面,即可完成郵件的發(fā)送。

在前臺頁面,controller方法里可以是一個連接,當(dāng)前臺點擊此連接時(發(fā)送郵件),自動發(fā)送郵件

常見問題

1、Invalid login - 535 Authentication failed 此項為密碼錯誤,詳見注意2 2、454 Authentication failed, please open smtp flag first!' 請在QQ郵箱 -> 設(shè)置 -> 帳戶 -> 開啟服務(wù):POP3/SMTP服務(wù)

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號