Laravel 9 SymfonyMailer错误-电子邮件必须具有“To”,“Cc”或“Bcc”标题

os8fio9y  于 2023-03-31  发布在  其他
关注(0)|答案(3)|浏览(185)

我在使用Metronic 8主题将Laravel 8项目更新到Laravel 9后遇到了发送电子邮件的问题。我没有更改任何与电子邮件相关的代码,但现在我使用Sendmail驱动程序时遇到了这个错误:
电子邮件必须具有“To”、“Cc”或“Bcc”标头。{“userId”:6,“exception”:“[object](Symfony\Component\Mime\Exception\LogicException(code:0):电子邮件必须具有“收件人”、“抄送”或“密件抄送”标题。at /home/myhome/public_html/myproject.com/vendor/symfony/mime/Message.php:128)

主计长

class MyController extends Controller
{
    public function activate($id)
    {
        $mymodel = MyModel::find($id);

        $contact = Contact::where('mymodel_id', $mymodel->id)->first();
        Mail::to($contact->email)->send(new MyMail($contact));
    }
}

可邮寄

class MailActive extends Mailable
{
    use Queueable, SerializesModels;

    protected $contact;

    public function __construct(Contact $contact)
    {
        $this->contact = $contact;
    }

    public function build()
    {
        return $this->from('theemail@gmail.com', 'Me')
            ->view('emails.myemailview')
            ->with([
                'contact' => $this->contact
            ]);

        // $this->withSymfonyMessage(function (Email $message) {
        //     $message->getHeaders()->addTextHeader(
        //         'addAddress', 'theemail@gmail.com'
        //     );
        // });

        // return $this;
    }
}

我尝试过单独呈现邮件,效果很好;使用日志驱动程序,效果很好,如您所见,我甚至尝试过在mailable类中使用withSymfonyMessage方法绕过Mail外观,但没有任何效果。
有没有我遗漏的配置或部分?我可以回去使用SwiftMailer没有太大的麻烦Laravel 9的工作?

6bc51xsx

6bc51xsx1#

使用**-〉to()**

return $this->from('theemail@gmail.com', 'Me')
            ->to($email, $name)
            ->view('emails.myemailview')
            ->with([
                'contact' => $this->contact
            ]);
ttp71kqs

ttp71kqs2#

电子邮件必须具有“To”、“Cc”或“Bcc”标头。{“userId”:6,“exception”:“[object](Symfony\Component\Mime\Exception\LogicException(code:0):电子邮件必须具有“收件人”、“抄送”或“密件抄送”标题。at /home/myhome/public_html/myproject.com/vendor/symfony/mime/Message.php:128)
如果to()丢失或者to()方法在Mailable类中接收到空集合,则会出现上述异常

nxowjjhe

nxowjjhe3#

to()邮件地址为空给定或缓存问题

**cache issue:**php artisan optimize:cl php artisan config:cache php artisan config:cl

相关问题