Mailgun 是一个电子邮件服务提供商,提供了发送和接收电子邮件的 API。Laravel 是一个流行的 PHP 框架,提供了与 Mailgun 集成的功能。在 Laravel 中使用 Mailgun 发送邮件时,通常会通过 Mailgun 的 API 进行通信。
错误代码“401 UNAUTHORIZED”表示请求未被授权。这通常是由于 API 密钥或域名配置不正确导致的。
确保你使用的 API 密钥是正确的,并且没有过期。你可以在 Mailgun 的控制台中查看和生成新的 API 密钥。
// 在 .env 文件中配置 Mailgun API 密钥
MAILGUN_SECRET=your_mailgun_secret_key
确保你在 Mailgun 中配置的域名是正确的,并且已经通过验证。
// 在 .env 文件中配置 Mailgun 域名
MAILGUN_DOMAIN=your_mailgun_domain
在 Laravel 中,确保你的邮件发送代码正确配置了 Mailgun 的认证信息。
// 在 config/mail.php 中配置 Mailgun 传输
'mailgun' => [
'transport' => 'mailgun',
'secret' => env('MAILGUN_SECRET'),
'domain' => env('MAILGUN_DOMAIN'),
],
以下是一个简单的示例,展示如何在 Laravel 5.4 中使用 Mailgun 发送邮件:
// 发送邮件
use Illuminate\Support\Facades\Mail;
$mail = new \Illuminate\Mail\Message;
$mail->from('sender@example.com', 'Sender Name');
$mail->to('recipient@example.com', 'Recipient Name')->subject('Test Email');
$mail->text('This is a test email.');
Mail::send(['html' => 'emails.test'], ['name' => 'John'], function ($message) use ($mail) {
$message->from('sender@example.com', 'Sender Name');
$message->to('recipient@example.com', 'Recipient Name')->subject('Test Email');
});
if (count(Mail::failures()) > 0) {
// 处理发送失败的情况
echo "There was one or more failures. They were: " . implode(", ", Mail::failures());
} else {
echo "Email sent successfully!";
}
通过以上步骤,你应该能够解决“401 UNAUTHORIZED”错误,并成功使用 Mailgun 发送邮件。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云