2015-12-24 126 views
1

我有Laravel 5.2全新安装。Laravel 5.2重置密码+ Mandrill

我以下:

  1. 我已经建立了我的.env文件 MAIL_DRIVER=mandrill SECRET=my_mandrill_api_key
  2. 我已经安装了狂饮(https://github.com/guzzle/guzzle
  3. 我已经设置我的电子邮件中的视图(https://github.com/laravel/laravel/blob/5.0/resources/views/emails/password.blade.php
  4. 我有固定证书问题(PHP cURL error code 60

因此,似乎一切都正确完成。

当我填写电子邮箱重新设置密码,并按下发送密码重置链接按钮,我得到以下错误

Server error: POST https://mandrillapp.com/api/1.0/messages/send-raw.json resulted in a 500 Internal Server Error response: {"status":"error","code":-1,"name":"ValidationError","message":"You must specify a key value"}

我检查我的日志中山魈(https://mandrillapp.com/settings/api)有我的动作没有日志。

从Mandrill的错误中,我知道它没有得到API密钥,所以出于某种原因,API密钥和其他值不会传递到Mandrill API。

问题:什么是缺失/错误?

注意:现在我正在构建应用程序的本地环境。我的本地环境Windows 10/Bitnami WAMP stack 7 /我也在使用Mandrill API。

enter image description here

+0

消息“:”你必须指定一个键值,你可以添加函数的代码吗? –

+0

是的,我知道我在.env文件中有正确的API密钥,但由于某种原因它不会传递到mandrill站点? –

回答

2

如果您使用的是山魈驱动程序,那么你必须设置在.ENV文件MANDRILL_SECRET

其他设置MAIL_HOST,MAIL_PORT等等是用于其他驱动程序。

请参阅有关使用Mandrill驱动程序的文档here。它提到,你应该设置山魈键config/services.php但你应该设置使用环境变量,因此,如果您有自定义的文件更改回

'mandrill' => [ 
    'secret' => env('MANDRILL_SECRET'), 
], 

然后,你将能够读取MANDRILL_SECRET值从.env文件中。

所以在你的.env文件中,

MAIL_DRIVER=mandrill 
MANDRILL_SECRET=your_mandrill_key_here 
+0

我从.env文件设置它,而不是从服务, –

+0

是的,我建议在那里做出改变,只要确保你的config/services.php看起来像mandrill组。 –

+0

不是不是我。 –