我有Laravel 5.2全新安装。
我做了以下事情:
.env
文件
MAIL_DRIVER=mandrill
SECRET=my_mandrill_api_key
所以似乎一切都正确完成。
当我填写电子邮件以重设密码并按发送密码重置链接按钮时,我收到以下错误
服务器错误:
POST https://mandrillapp.com/api/1.0/messages/send-raw.json
导致了错误500 Internal Server Error
回复: {"状态":"错误""代码": - 1,"名称":" ValidationError",& #34;消息":"你 必须指定一个键值"}
我已经检查了我的登录Mandrill(https://mandrillapp.com/settings/api)我的行动没有日志。
从Mandrill的错误中,我知道它没有得到api密钥,因此由于某种原因,api密钥和其他值没有传递给Mandrill api。
问题:缺少什么/错误?
注意:现在我正在构建应用程序的本地环境。我的本地环境Windows 10 / Bitnami WAMP堆栈7 /我也在使用Mandrill API。
答案 0 :(得分:2)
如果您使用的是Mandrill驱动程序,则必须在.env文件中设置MANDRILL_SECRET
。
其他设置MAIL_HOST
,MAIL_PORT
等用于其他驱动程序。
请参阅有关使用Mandrill驱动程序的文档here。它提到您应该在config/services.php
中设置Mandrill键,但是您应该使用环境变量来设置它,所以如果您已经自定义了文件,请将其更改回
'mandrill' => [
'secret' => env('MANDRILL_SECRET'),
],
然后,您将能够从.env文件中读取MANDRILL_SECRET
值。
所以在你的.env文件中你会有;
MAIL_DRIVER=mandrill
MANDRILL_SECRET=your_mandrill_key_here