写点什么

Node.js 邮件发送组件 - Nodemailer 1.0 发布

  • 2014-07-20
  • 本文字数:995 字

    阅读完需:约 3 分钟

Nodemailer 是一个简单易用的 Node.js 邮件发送组件(通过 SMTP、sendmail 或者 Amazon SES 实现邮件发送),且支持 Unicode 编码。近日,Nodemailer 1.0 发布,此版本包括许多新特性,稳定性也得到了提高,第一次不支持向后兼容。该版本对整个代码进行了重构,降低了代码复杂度,使代码更加简单,更加易于维护。该版本还新增了一个简单的插件 API。

Nodemailer 的主要特点包括:

  • 支持 Unicode 编码
  • 支持 HTML 内容和普通文本内容
  • HTML 内容中可以嵌入图片
  • 使用 SSL/STARTTLS 实现安全的邮件发送
  • 支持内置的 transport 方法和其他插件实现的 transport 方法
  • 自定义插件处理消息
  • 支持 XOAUTH2 登录验证

Nodemailer 0.x 系列版本包括许多开发者不需要的功能,为了降低 Nodemailer 的代码复杂度和提高可维护性,Nodemailer 1.0 把这些可选的功能代码移出核心代码库,并以插件的形式提供相应功能,如 nodemailer-markdown 插件,在构建模板时需要使用该插件,它使开发者能够使用标记代替 html 内容或者普通文本。

在 Nodemailer 1.0 中,使用新代码重写了一些模块,并从 emailjs.org 邮件处理组件的代码中,借鉴了许多代码。该版本还规范化了一些 API,如使用 filename 代替 fileName。同时还废除了一些功能,如废除了 generateTextFromHTML 方法。

Nodemailer 1.0 基于 new Node streaming API (Streams2)实现发送邮件,所以性能上有了很大的提高,使开发者能够实现 G 量级的附件发送,且在短时间内能够发送数千万封邮件。

根据新新增的插件 API 要求,所有的插件都必须接收两个参数,第一个是邮件对象,第二个是回调函数,邮件对象包括两个属性:data 和 message。

Nodemailer 1.0 以后的版本将会根据语义化版本控制规范制定,新功能和向后不兼容的变化将会放到主版本中,bug 的修复将会放到补丁版本中。

请开发者注意,如果您正在使用Nodemailer 0.7 或者更低的版本,建议不要升级。如果真有升级需要,请参考0.7 版本升级到1.0 版本的升级指南。另外,Nodemailer 是Node.js 邮件发送模块, Node.js 是一个可用来快速构建网络服务及应用的平台,它对 Google V8 引擎进行了封装。有关 Nodemailer 更多详细内容请查看发行说明,登录GitHub下载 Nodemailer。


感谢郭蕾对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ )或者腾讯微博( @InfoQ )关注我们,并与我们的编辑和其他读者朋友交流。

2014-07-20 23:462085
用户头像

发布了 92 篇内容, 共 46.8 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

excel表格Excel 2021 for Mac

Mac相关知识分享

中国信通院启动科研智能(AI4R&D)重点标准化方向及参编专家征集工作

中国信通院AI Infra工作组

万界星空科技电线电缆行业MES系统核心功能

万界星空科技

mes 万界星空科技 电线电缆行业 电线电缆mes

中国信通院边缘人工智能平台标准首轮评估正式启动

中国信通院AI Infra工作组

Apache Doris 2.1.6 版本正式发布

SelectDB

数据仓库 数据分析 LakeHouse 物化视图

华为全联接大会2024︱鲲鹏计算产业峰会成功举办

Geek_2d6073

SSH 配置文件管理工具SSH Config Editor Pro for Mac

Mac相关知识分享

LED厂家告诉您LED玻璃幕墙如何设计

Dylan

设计 艺术 LED LED display LED显示屏

中国信通院可信人工智能基础平台(AI Infra)评估工作正式启动

中国信通院AI Infra工作组

VMware Live Site Recovery 9.0.2 发布下载,新增功能概览

sysin

vmware esxi

助力企业降低成本,ByteHouse打造新一代“弹性”云数仓

字节跳动数据平台

数据库 大数据 云原生 Clickhouse 数仓

中国人工智能产业发展联盟正式发布《科研智能(AI4R&D)——人工智能驱动的研发新范式》

中国信通院AI Infra工作组

基于京东API返回值的商家商品管理策略优化

代码忍者

API 接口 API 测试 pinduoduo API

mac苹果电脑系统优化工具:CleanMyMac X for mac 中文激活版

你的猪会飞吗

mac破解软件下载 CleanMyMac X破解版 CleanMyMac X中文

Amazon Bedrock 模型微调实践(二):数据准备篇

亚马逊云科技 (Amazon Web Services)

人工智能

故障测试入门指南

FunTester

可信AI评估|中国信通院可信AI“大模型一体机”第二批评估正式启动

中国信通院AI Infra工作组

全能视频处理软件VideoProc Converter for mac

Mac相关知识分享

“前沿思享会:探索AI+材料新边界”闭门研讨会顺利召开

中国信通院AI Infra工作组

海尔连续3年蝉联生态品牌认证“领航者”,飞书获评“突破者” ,共建生态绿洲

ToB行业头条

大模型训练平台标准第三次研讨会即将召开

中国信通院AI Infra工作组

《科研智能(AI4R&D)——人工智能驱动的研发新范式》正式发布

中国信通院AI Infra工作组

Go 必知必会:Interface灵活而强大的类型系统

王中阳Go

接口 interface 数据类型 GO语言编程

金融安全架构设计中的反思

I

安全架构 金融服务安全 安全架构设计

Splunk Enterprise for Mac可视化数据分析收集软件

Mac相关知识分享

一文说清楚ETL与Kafka如何实现集成

RestCloud

kafka 数据处理 分析 ETL 数据集成

阿里巴巴拍立淘API返回值:商家优化商品信息的深度指南

代码忍者

API 测试 pinduoduo API

探索高质量大模型推理平台建设路径——大模型推理标准第二次研讨会即将召开

中国信通院AI Infra工作组

活动预告:“大模型时代下AI中台”主题沙龙

中国信通院AI Infra工作组

虚拟人,如何用好这个“外挂”?一定要看看这本书!

博文视点Broadview

探索高质量大模型训练平台建设路径——大模型训练标准第三次研讨会顺利召开

中国信通院AI Infra工作组

Node.js邮件发送组件- Nodemailer 1.0发布_架构/框架_李士窑_InfoQ精选文章