Vercel Email API
基于Vercel Serverless Functions的邮件发送服务,轻松集成到任何前端应用
功能特点
稳定可靠
使用 Nodemailer 发送邮件,确保高送达率
多种格式
支持纯文本和 HTML 格式邮件
跨域支持
支持 CORS,可配置允许访问的域名
无服务器
部署在 Vercel 平台,无需维护服务器
安全特性
内置速率限制、请求验证等安全机制
错误处理
完整的错误处理和日志记录
API 文档
请求地址
/api
请求参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| to | string | 是 | 收件人邮箱地址 |
| subject | string | 是 | 邮件主题 |
| text | string | 可选 | 纯文本内容(text和html至少提供一个) |
| html | string | 可选 | HTML格式内容(text和html至少提供一个) |
| from_name | string | 否 | 发送者名称 |
响应格式
成功响应
错误响应
{
"success": true,
"messageId": "邮件ID"
}
{
"error": "错误信息",
"details": "详细错误信息"
}
使用示例
代码示例
Fetch API
Axios
jQuery
// 使用Fetch API发送邮件
const sendEmail = async () => {
const response = await fetch('https://your-vercel-app.vercel.app/api', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
to: 'recipient@example.com',
subject: '测试邮件',
text: '这是一封测试邮件'
})
});
const data = await response.json();
return data.success ? data.messageId : Promise.reject(data.error);
}
// 使用Axios发送邮件
const sendEmail = async () => {
const response = await axios.post('https://your-vercel-app.vercel.app/api', {
to: 'recipient@example.com',
subject: '测试邮件',
text: '这是一封测试邮件'
});
return response.data.success ? response.data.messageId : Promise.reject(response.data.error);
}
// 使用jQuery发送邮件
function sendEmail() {
return new Promise((resolve, reject) => {
$.ajax({
url: 'https://your-vercel-app.vercel.app/api',
type: 'POST',
contentType: 'application/json',
data: JSON.stringify({
to: 'recipient@example.com',
subject: '测试邮件',
text: '这是一封测试邮件'
}),
success: data => data.success ? resolve(data.messageId) : reject(data.error),
error: (_, __, error) => reject(error)
});
});
}
测试发送邮件
使用下面的表单测试邮件发送功能: