Laravel Mailbox
发布日期 作者: Paul Redmond
Laravel Mailbox 是 Marcel Pociot 开发的一个包,用于处理 Laravel 应用程序中的传入电子邮件。Mailbox 具有一个流畅的 API,允许您定义自定义邮箱来接收传入电子邮件。
以下是一个来自 文档 的传入电子邮件处理程序的快速示例
Mailbox::from('{username}@gmail.com', function (InboundEmail $email, $username) { // Access email attributes and content $subject = $email->subject(); $email->reply(new ReplyMailable);});
Laravel Mailbox 通过监听来自支持驱动程序(选项包括“mailgun”、“sendgrid”和“log”)的传入电子邮件,然后通过自定义邮箱类进行响应。在基本级别上,以下是如何在服务提供程序中定义邮箱的示例
use BeyondCode\Mailbox\Facades\Mailbox; class AppServiceProvider extends ServiceProvider{ /** * Bootstrap any application services. * * @return void */ public function boot() { Mailbox::from('[email protected]', function (InboundEmail $email) { // Handle the incoming email }); }}
上面的示例使用了闭包,但第二个参数也可以是可调用类
Mailbox::from('[email protected]', MyMailbox::class);
默认情况下,此包将所有传入电子邮件存储在数据库中,并具有可配置的保存时间。您可以使用 Laravel 的调度程序与包的“mailbox:clean”命令一起使用,该命令会删除数据库中保存时间超过可配置时间的电子邮件。请查看 存储电子邮件 文档以获取更多详细信息。
开箱即用,Mailbox 支持 Mailgun、Sendgrid 和本地开发驱动程序/日志。但是,您可以轻松地扩展/添加自定义驱动程序 - Laravel Mailbox 使用与 Laravel 用户熟悉的相同管理器模式(即数据库驱动程序)。
要了解有关 Laravel Mailbox 的更多信息,您可以在 GitHub 上查看源代码 beyondcode/laravel-mailbox。要了解如何安装和使用该包,请查看 Laravel Mailbox 文档。