在 windows自动发送邮件
下载node到本地
下载地址 https://nodejs.org/dist/v12.1...

添加node到环境变量 使用bat脚本 下载nodemailer 运行
nodemailer官网 https://nodemailer.com/about/

@echo off
set path1=%~d0
set path2=%cd%
set path3=%0
set path4=%~dp0
set path5=%~sdp0

echo 当前盘符path1:%path1%
echo 当前路径path2:%path2%
echo 当前执行命令行path3:%path3%
echo 当前bat文件路径path4:%path4%
echo 当前bat文件短路径path5:%path5%

setx "Path" "%path4%node"

node -v
npm -v

cd %path4%

npm install nodemailer -save

node ./email.js

pause>nul

编写email.js 和在bat脚本同级目录

"use strict";
const nodemailer = require("nodemailer");

// 定义一个异步方法
async function main() {
  // Generate test SMTP service account from ethereal.email
  // Only needed if you don't have a real mail account for testing
  let testAccount = await nodemailer.createTestAccount();
  // 创建一个SMTP协议的连接对象
  let transporter = nodemailer.createTransport({
    // 连接地址
    host: "smtp.ethereal.email",
    // 连接端口
    port: 587,
    // 如果是 true 默认465端口, false 为其他端口
    secure: false, 
    auth: {
      // 邮箱的用户名
      user: testAccount.user, 
      // 邮箱的密码
      pass: testAccount.pass 
    }
  });

  // 通过连接对象发送邮件
  let info = await transporter.sendMail({
    // 发送者
    from: '"Fred Foo ?" <foo@example.com>', 
    // 接受者 多个 逗号隔开
    to: "bar@example.com, baz@example.com", 
    // 主题
    subject: "Hello", 
    // 文本内容
    text: "Hello world?", 
    // 也可以发送html
    html: "<b>Hello world?</b>",
    attachments: [
      {
        // 文件名称
        filename: 'test.txt',
        // 文件路径
        path: '../power/power/test.txt'
      }
    ]
  });
}

main().catch(console.error);

skiy
0 声望0 粉丝