卢门:当从命令发送电子邮件时,它给了我错误



我使用的是lume框架,它是laravel的微框架我必须为发送的电子邮件创建cron,我已将我的文件放入应用程序/控制台/命令

在kernel.php文件中注册我的命令

它运行良好,我已经检查过了

现在文件中已经调用了下面发送电子邮件的型号代码,

$sent = Mail::send(['html' => 'email_render'], ['html' => $data["body"]], function ($msg) use ($data) {
$msg->from($data["from_address"])
->to($data["to_address"])->subject($data["subject"]);//->setBody($data["body"]);
if (isset($data["cc_address"]) && $data["cc_address"]) {
$msg->cc($data["cc_address"]);
}
if (isset($data["bcc_address"]) && $data["bcc_address"]) {
$msg->bcc($data["bcc_address"]);
}
if (isset($data["attachment"]) && $data["attachment"]) {
foreach ($data["attachment"] as $attachment) {
$msg->attach($attachment['file'], $attachment['options']);
}
}
if (isset($data["message_id"]) && $data["message_id"] && $data["type"] != "compose") {
$msg->getSwiftMessage()->getHeaders()->addTextHeader("In-Reply-To", "<".$data["message_id"].">");
$msg->getSwiftMessage()->getHeaders()->addTextHeader("References", self::getReferances($data));
}
});

它给我的错误如下,

[RuntimeException]                                                         ←[39;49m
←[37;41m  No supported encrypter found. The cipher and / or key length are invalid. 

相同的模型函数,如果我从控制器调用它,那么它正在工作,但从命令调用它,则它会给我错误,

有什么原因吗

我得到了我的解决方案,

在lumen框架中,我无法使用命令生成密钥

artisan key:generate

解决方案

我已经使用以下url生成了它,

Lumen Micro Framework=>php artisan密钥:生成

然后运行我的命令,它正在发送电子邮件,

但是不确定为什么它以前使用控制器而不使用命令。

之所以会发生这种情况,是因为您使用的密码所期望的字符串大小与您设置中的字符串大小不同。

如果您在配置中使用16个字符的字符串(SomeRandomString(,则可以将其更改为使用密码AES-128-CBC

但我建议您运行artisan命令(从命令行(php artisan key:generate

最新更新