ts发送邮箱,以网易邮箱来演示

2024-08-29 13:52
文章标签 邮箱 发送 演示 ts 网易

本文主要是介绍ts发送邮箱,以网易邮箱来演示,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

①引入依赖:

npm i @nestjs-modules/mailer nodemailer

这里是引入相应的需要的依赖。

创建模块,以及服务

nest generate module sendEmail 

nest generate service sendEmail 

②在app.module中注册,之后在其它的模块就可以使用

import { Module } from '@nestjs/common';
import { MailerModule } from '@nestjs-modules/mailer';
import { PugAdapter } from '@nestjs-modules/mailer/dist/adapters/pug.adapter';@Module({imports: [MailerModule.forRoot({transport: {host: process.env.EMAIL_HOST, // Replace with the SMTP server of the email providerport: parseInt(process.env.EMAIL_PORT), // Typically 465 for secure SMTP (SSL/TLS)secure: true, // Use SSL/TLSauth: {user: process.env.EMAIL_USERNAME, // Your email addresspass: process.env.EMAIL_PASSWORD, // Your email password},},defaults: {from: `"${process.env.EMAIL_FROM}" <${process.env.EMAIL_FROM_ADDRESS}>`, // Default sender address},template: {dir: join(__dirname, 'templates'), // Directory for email templatesadapter: new PugAdapter(), // Template engineoptions: {strict: true,},},}),],providers: [],exports: [],
})
export class AppModule {}

EMAIL_HOST='smtp.163.com'
EMAIL_PORT='465'
EMAIL_USERNAME='你的邮箱号'
EMAIL_PASSWORD='你的邮箱密码'
EMAIL_FROM='发送的来源信息'
EMAIL_FROM_ADDRESS='你的邮箱号'

到这里你就配置完成了信息

import { Module } from '@nestjs/common';
import { SendEmailService } from './send-email.service';@Module({providers: [SendEmailService],exports: [SendEmailService],
})
export class SendEmailModule {}

③使用:

我这里将内容抽取出来作为方法来使用

import { MailerService } from '@nestjs-modules/mailer';
import { Injectable } from '@nestjs/common';@Injectable()
export class SendEmailService {constructor(private readonly mailerService: MailerService) {}// eslint-disable-next-line max-lines-per-functionasync sendEmail(to: string,subject: string,title: string,subTitle: string,description: string,content: string | number,) {const result = await this.mailerService.sendMail({to,from: process.env.EMAIL_FROM_ADDRESS,subject: subject,template: 'reset-password',context: {title,subTitle,description,content,},});return result;}
}

这里的reset-password是模块的名称

就在该模块下的templates文件夹下创建reset-password.hbs内容

<html lang='en-US'>

  <head>

    <meta content='text/html; charset=utf-8' http-equiv='Content-Type' />

    <title>${title}</title>

    <meta name='description' content='Email Template' />

    <style type='text/css'>

      a:hover { text-decoration: underline !important; }

    </style>

  </head>

  <body

    marginheight='0'

    topmargin='0'

    marginwidth='0'

    style='margin: 0px; background-color: #f2f3f8'

    leftmargin='0'

  >

    <!--100% body table-->

           <!-- 这里输入自己想要的样式,要发送的内容等-->

    <!--/100% body table-->

  </body>

</html>

这里就是发送的样式的路径位置,以及文件名称

这样就将整个发送的从注册到使用书写完成

这篇关于ts发送邮箱,以网易邮箱来演示的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1118047

相关文章

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

使用Python的requests库来发送HTTP请求的操作指南

《使用Python的requests库来发送HTTP请求的操作指南》使用Python的requests库发送HTTP请求是非常简单和直观的,requests库提供了丰富的API,可以发送各种类型的HT... 目录前言1. 安装 requests 库2. 发送 GET 请求3. 发送 POST 请求4. 发送

基于Python编写自动化邮件发送程序(进阶版)

《基于Python编写自动化邮件发送程序(进阶版)》在数字化时代,自动化邮件发送功能已成为企业和个人提升工作效率的重要工具,本文将使用Python编写一个简单的自动化邮件发送程序,希望对大家有所帮助... 目录理解SMTP协议基础配置开发环境构建邮件发送函数核心逻辑实现完整发送流程添加附件支持功能实现htm

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

python运用requests模拟浏览器发送请求过程

《python运用requests模拟浏览器发送请求过程》模拟浏览器请求可选用requests处理静态内容,selenium应对动态页面,playwright支持高级自动化,设置代理和超时参数,根据需... 目录使用requests库模拟浏览器请求使用selenium自动化浏览器操作使用playwright

Python办公自动化实战之打造智能邮件发送工具

《Python办公自动化实战之打造智能邮件发送工具》在数字化办公场景中,邮件自动化是提升工作效率的关键技能,本文将演示如何使用Python的smtplib和email库构建一个支持图文混排,多附件,多... 目录前言一、基础配置:搭建邮件发送框架1.1 邮箱服务准备1.2 核心库导入1.3 基础发送函数二、

java向微信服务号发送消息的完整步骤实例

《java向微信服务号发送消息的完整步骤实例》:本文主要介绍java向微信服务号发送消息的相关资料,包括申请测试号获取appID/appsecret、关注公众号获取openID、配置消息模板及代码... 目录步骤1. 申请测试系统2. 公众号账号信息3. 关注测试号二维码4. 消息模板接口5. Java测试

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

Python使用smtplib库开发一个邮件自动发送工具

《Python使用smtplib库开发一个邮件自动发送工具》在现代软件开发中,自动化邮件发送是一个非常实用的功能,无论是系统通知、营销邮件、还是日常工作报告,Python的smtplib库都能帮助我们... 目录代码实现与知识点解析1. 导入必要的库2. 配置邮件服务器参数3. 创建邮件发送类4. 实现邮件

使用Python和SQLAlchemy实现高效的邮件发送系统

《使用Python和SQLAlchemy实现高效的邮件发送系统》在现代Web应用中,邮件通知是不可或缺的功能之一,无论是订单确认、文件处理结果通知,还是系统告警,邮件都是最常用的通信方式之一,本文将详... 目录引言1. 需求分析2. 数据库设计2.1 User 表(存储用户信息)2.2 CustomerO