@emailjs/nodejs

中文文档
5.0.2发布于 2024/10/22BSD-3-ClauseTypeScriptESM + CJS零依赖近 30 天下载 3.2万

节点JS的官方电子邮件 JS SDK

中文使用文档
文档目录8 节
  1. 免责声明
  2. 链接
  3. 介绍
  4. 使用量
  5. 财务问题
  6. 实例
  7. ECMAScript 模块
  8. 配置

官方电子邮件 JS SDK for Node.js

SDK 为 电子邮件JS.com 顾客.
使用您的电子邮件JS 账户发送邮件 .

codecov npm version

免责声明

这是Node.js平台,否则使用

官方 SDK 文档

介绍

电子邮件JS帮助您直接从一个命令的代码发送电子邮件. 不需要大的知识 – 只要将 EmailJS 连接到被支持的其中之一 电子邮件服务, 创建电子邮件模板, 并使用我们的 SDK 触发电子邮件.

使用量

使用 EmailJS SDK 安装电子邮件 无数字 :

$ npm install @emailjs/nodejs

说明:默认情况下,对于非浏览器应用程序,API请求被禁用. 你需要通过激活它们 账户:安全。 。 。 .

财务问题

非浏览器应用程序的 API 呼叫已禁用

您需要激活 API 请求 结束 账户:安全。 。 。 .

实例

ECMAScript 模块

使用定制的发送方法发送电子邮件

import emailjs from '@emailjs/nodejs';

const templateParams = {
  name: 'James',
  notes: 'Check this out!',
};

emailjs
  .send('YOUR_SERVICE_ID', 'YOUR_TEMPLATE_ID', templateParams, {
    publicKey: 'YOUR_PUBLIC_KEY',
    privateKey: 'YOUR_PRIVATE_KEY', // optional, highly recommended for security reasons
  })
  .then(
    (response) => {
      console.log('SUCCESS!', response.status, response.text);
    },
    (err) => {
      console.log('FAILED...', err);
    },
  );

输入( 可选)

import emailjs from '@emailjs/nodejs';

// set Public Key as global settings
emailjs.init({
  publicKey: 'YOUR_PUBLIC_KEY',
  privateKey: 'YOUR_PRIVATE_KEY', // optional, highly recommended for security reasons
});

emailjs.send('YOUR_SERVICE_ID', 'YOUR_TEMPLATE_ID').then(
  (response) => {
    console.log('SUCCESS!', response.status, response.text);
  },
  (err) => {
    console.log('FAILED...', err);
  },
);

使用电子邮件JS 错误处理器等待/同步

import emailjs, { EmailJSResponseStatus } from '@emailjs/nodejs';

try {
  await emailjs.send(
    'YOUR_SERVICE_ID',
    'YOUR_TEMPLATE_ID',
    {},
    {
      publicKey: 'YOUR_PUBLIC_KEY',
      privateKey: 'YOUR_PRIVATE_KEY', // optional, highly recommended for security reasons
    },
  );
  console.log('SUCCESS!');
} catch (err) {
  if (err instanceof EmailJSResponseStatus) {
    console.log('EMAILJS FAILED...', err);
    return;
  }

  console.log('ERROR', err);
}

配置

选项

可在全球范围内使用 输入 作为函数的第四个参数.
本地参数的优先级将高于全球参数.

名称类型默认说明
公钥字符串要求公用钥匙引用该方法.
块列表块列表块列表设置.
限制限制限制速率配置 .
存储器存储器自定义密钥值存储的提供者 .

块列表

如果被监视的变量包含块列表中的值,则允许忽略一个方法调用.
如果请求被阻断, 该方法将返回错误 403 .

名称类型说明
列表字符串 []字符串阵列包含要阻断的值 .
可变可见字符串被监视变量的名称 .

限制

允许设定调用方法的限速率 .
如果请求达到极限速率,该方法会还原出错429.

名称类型默认说明
编号字符串页面路径限制率默认为每页. 要推翻行为,请设定ID. 它可以是每个页面,组,或应用程序的自定义ID.
节流阀数目(单位:百万美元) 在数毫秒后, 允许下一个请求 .

存储器

允许提供自定义密钥值存储 。 默认情况下,如果可用则使用本地Storage.
自定义提供者必须匹配接口.

interface StorageProvider {
  get: (key: string) => Promise<string | null | undefined>;
  set: (key: string, value: string) => Promise<void>;
  remove: (key: string) => Promise<void>;
}

宣布全局设置

import emailjs from '@emailjs/nodejs';

emailjs.init({
  publicKey: 'YOUR_PUBLIC_KEY',
  privateKey: 'YOUR_PRIVATE_KEY', // optional, highly recommended for security reasons
  blockList: {
    list: ['[email protected]', '[email protected]'],
  },
  limitRate: {
    throttle: 10000, // 10s
  },
});

覆盖本地设置

import emailjs from '@emailjs/nodejs';

const templateParams = {
  name: 'James',
  notes: 'Check this out!',
};

emailjs
  .send('YOUR_SERVICE_ID', 'YOUR_TEMPLATE_ID', templateParams, {
    publicKey: 'YOUR_PUBLIC_KEY',
    privateKey: 'YOUR_PRIVATE_KEY', // optional, highly recommended for security reasons
    blockList: {
      watchVariable: 'userEmail',
    },
    limitRate: {
      throttle: 0, // turn off the limit rate for these requests
    },
  })
  .then(
    (response) => {
      console.log('SUCCESS!', response.status, response.text);
    },
    (err) => {
      console.log('FAILED...', err);
    },
  );

版本与发布记录

@emailjs/nodejs 共发布 13 个版本,首次发布于 2022/11/02;过去 12 个月发布了 0 个版本。

版本发布日期距今
5.0.2latest2024/10/222 年前
5.0.12024/10/212 年前
5.0.02024/10/212 年前
4.1.02024/10/022 年前
4.0.42024/07/122 年前
4.0.32024/07/122 年前

关于 @emailjs/nodejs 的常见问题

@emailjs/nodejs 是什么?

节点JS的官方电子邮件 JS SDK

如何安装 @emailjs/nodejs?

在项目目录运行 npm install @emailjs/nodejs,或使用 pnpm add / yarn add / bun add。

@emailjs/nodejs 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@emailjs/nodejs 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@emailjs/nodejs 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=18.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@emailjs/nodejs 可以商用吗?

@emailjs/nodejs 使用 BSD-3-Clause 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。另外不得用原作者名义为衍生产品背书。以上为概括,不构成法律意见,请以许可原文为准。

@emailjs/nodejs 的下载量有多少?

根据 npm 官方下载统计,@emailjs/nodejs 在 2026/10/14 – 2026/11/12 这 30 天内被下载 32,431 次,日均约 1,081 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@emailjs/nodejs 还在维护吗?

最新版本 5.0.2 发布于 2024/10/22(2 年前);至今共发布 13 个版本,其中过去 12 个月发布了 0 个;首次发布于 2022/11/02。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。