exonos / mailapi
为Laravel设计的交易性邮件作为微服务
v1.0.0
2024-06-03 05:27 UTC
Requires
- php: ^8.1
- laravel/framework: ^9.0 || ^10.0
This package is auto-updated.
Last update: 2024-09-03 04:27:58 UTC
README
邮件API
认识MailAPI
MailAPI是一个Laravel包,它提供了一个邮件发送API作为微服务,旨在高效地处理多个邮件客户端,无需重复配置。此工具允许企业集中无缝管理其交易性邮件,为客户提供强大且可扩展的客户沟通解决方案。
关键功能
-
邮件发送微服务:MailAPI作为一个微服务,能够轻松与各种应用程序和服务集成,从单一平台优化邮件管理。
-
集中配置:通过集中所有邮件发送设置在一个地方,消除配置冗余。这简化了管理并减少了配置错误。
-
队列和任务:实现了邮件发送的队列和任务,确保消息的有效传递并优化大量邮件的处理。
-
日志和监控:包括发送邮件的日志和监控功能,允许企业跟踪邮件的状态和历史,以及管理错误和异常。
项目设置
安装所有依赖项
composer require exonos\mailapi
运行所有迁移
php artisan migrate
要发送邮件,创建一个客户端,这将生成一个用于API的秘密。
php artisan mail:client
向http://{你的本地地址}/api/v1/email发送POST请求,携带有效负载
{
"from": "father doe",
"to": [
{
"email": "john@doe.com",
"name": "John doe"
}
],
"subject": "Hi from {$company}",
"text": "test",
"html": "<h1>{$company} is saying hi</h1><p>testing html with {$company}</p>",
"variables": [
{
"email": "john@doe.com",
"substitutions": [
{
"var": "company",
"value": "MailAPI"
}
]
}
],
"attachments" : [
{
"filename" : "test.jpg",
"content" : "base 64 file content"
}
]
}
带有头部
secret: {generated secret}
Accept: application/json
注意
- 附件是可选的
- 你可以发送文本或HTML,但不能同时发送两者
- 该包将采用Laravel应用程序在.env中定义的默认凭据,请确保正确配置连接。
- 如果你添加了一个变量,请提供它的替换方式,如果没有这样做,则不会替换并将从收件人中忽略。
安全漏洞
如果你在MailAPI中发现安全漏洞,请通过向我们负责任地披露它来帮助我们维护该项目的安全性。要报告安全漏洞,请发送电子邮件至hh.abdiel@gmail.com。我们将尽快解决这个问题。
致谢
支持我的工作
如果你发现MailAPI很有用,并想支持我的工作,你可以买我一杯咖啡。你的支持将有助于保持这个项目的活力和繁荣。这是对感激之情的微小象征,但却意义重大。
许可
MIT许可(MIT)。有关更多信息,请参阅许可文件。
用❤️来自墨西哥制作