rednucleus / emailsender
通过 Microsoft Graph API 或 SMTP 发送电子邮件
1.1.0
2023-09-08 09:45 UTC
Requires
- php: ^8.1
- ext-json: *
- greew/oauth2-azure-provider: ^1.0
- guzzlehttp/guzzle: ^7.0.1 || ^7.2
- guzzlehttp/psr7: ^2.4
- laravel/framework: ^9.0
- phpmailer/phpmailer: ^6.8
- symfony/mailer: ^6.0
This package is auto-updated.
Last update: 2024-09-09 16:47:35 UTC
README
rednucleus/emailsender 是一个 Laravel 扩展包,提供了一种简单的方法来使用 Microsoft Graph 或 SMTP 发送电子邮件。请按照以下步骤在您的 Laravel 项目中安装和配置此扩展包。
安装
要安装此扩展包,请在您的终端中运行以下命令
composer require rednucleus/emailsender
如果您遇到依赖项问题,可以运行此命令代替
composer require rednucleus/emailsender --with-all-dependencies
配置
- 在您的
.env
文件中设置 Microsoft Graph 或 SMTP 认证密钥
MS_CLIENT_ID=<Your MS client ID>
MS_CLIENT_SECRET=<Your MS client secret>
MS_TENANT_ID=<Your MS tenant ID>
MS_REFRESH_TOKEN=<Your MS refresh token>
MS_SENDER_TYPE=<Type of sender, either 'smtp' or 'msgraph'>
MS_CACHE=<Type of sender, either 'false' or 'true'>
您可以通过将 MS_CACHE
环境变量设置为 true
来启用令牌管理器缓存。请注意,缓存功能仅适用于 msgraph
。
- 通过在终端中运行以下命令发布配置文件
php artisan vendor:publish --provider="rednucleus\Emailsender\RNSenderEmailServiceProvider"
这将创建一个位于您的 config
目录中的 emailsender.php
文件。
- 通过将以下邮件发送器配置添加到您的
config/mail.php
文件中,来配置邮件发送器
'rnemailsender' => [
'transport' => 'rnemailsender',
'sender' => env('MS_SENDER_TYPE', 'smtp'),
'cache' => env('MS_CACHE', false),
],
使用方法
要在您的应用程序中使用 rednucleus/emailsender 邮件发送器,请按照以下步骤操作
- 使用
make:mail
Artisan 命令创建一个新的可邮寄类
php artisan make:mail ExampleMail
- 更新您的新的
ExampleMail
类中的build
方法,包括电子邮件的内容和主题
public function build()
{
return $this->subject('Example Subject')
->view('emails.example');
}
- 在您的应用程序代码中,使用
Mail
门面,通过rnemailsender
邮件发送器发送电子邮件
use Illuminate\Support\Facades\Mail;
Mail::to('example@example.com')->send(new ExampleMail());
就是这样!现在您应该能够在 Laravel 应用程序中使用 rednucleus/emailsender 扩展包发送电子邮件。