用nodejs向163邮箱, gmail邮箱, qq邮箱发邮件, nodemailer使用详解

本文介绍如何利用Nodemailer库从163邮箱发送包含多个附件的邮件,包括配置SMTP服务器、设置发件人及收件人信息、定义邮件主题和内容等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

准备工作

  • 准备一个163的邮箱, 并获取授权码 
  • 在本地机器安装nodejs
  • "注释详尽"的源码

  • 'use strict';
    const nodemailer = require('nodemailer');
    const moment = require('moment');
    const path = require('path');
    
    nodemailer.createTestAccount((err, account) => {
        // 填入自己的账号和密码
        let transporter = nodemailer.createTransport({
            host: 'smtp.163.com',
            port: 465,
            secure: true, // 如果是 true 则port填写465, 如果 false 则可以填写其它端口号
            auth: {
                user: "lijianzhaoyou@163.com", // 发件人邮箱
                pass: "" // 发件人密码(用自己的...)
            }
        });
        // 获取当前时间
        let sendTime = moment().format('MMMM Do YYYY, h:mm:ss a');
        // 填写发件人, 收件人
        let mailOptions = {
            // 发件人地址
            from: 'lijianzhaoyou@163.com',
            // 收件人列表, 向163邮箱, gmail邮箱, qq邮箱各发一封
            to: 'lijianzhaoyou@163.com, zhaoolee@gmail.com, 861881383@qq.com',
            // 邮件主题
            subject: '用nodemailer发出的邮件~',
            // 文字内容
            text: '发送附件内容',
            // html内容
            html: '<b>发送时间:' + sendTime + '</b>',
            // 附件内容 是一个列表, 第一个是目录下的pack.json文件, 第二是御坂美琴的头像, 第三是作者在拍的图片的zip包
            attachments: [{
                filename: 'package.json',
                path: path.resolve(__dirname, 'package.json')
            }, {
                filename: 'bilibili.jpg',
                path: path.resolve(__dirname, 'bilibili.jpg')
            }, {
                filename: 'room.zip',
                path: path.resolve(__dirname, 'room.zip')
            }],
        };
    
        // 发送邮件
        transporter.sendMail(mailOptions, (error, info) => {
            if (error) {
                return console.log(error);
            }
            console.log("邮件发送成功~");
        });
    });

    链接:https://pan.baidu.com/s/1Gk6zMO4_I2oWNvRlgzmfng 密码:i3lu

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值