Laravel 4 & Mandrill JSON 响应
Posted
技术标签:
【中文标题】Laravel 4 & Mandrill JSON 响应【英文标题】:Laravel 4 & Mandrill JSON response 【发布时间】:2014-11-02 02:51:20 【问题描述】:这些天我已经开始通过 Laravel (4.2) 及其嵌入式 Mandrill 驱动程序发送邮件,但我需要以某种方式捕捉 Mandrill 的响应。
这是我用来发送消息的代码:
Mail::queue('emails.customerspromo', array('messaggio'=>$content, 'disclaimer'=>$disclaimer, 'user_email'=>$to, 'user_id'=>$uid), function($message) use ($sender, $to, $subject)
$message->from('my@address.it', $sender);
$message->to($to);
$message->subject($subject);
$message->setCharset('UTF-8');
$message->getHeaders()->addTextHeader('X-MC-GoogleAnalytics', 'www.my-site.it');
$message->getHeaders()->addTextHeader('X-MC-GoogleAnalyticsCampaign', 'my-campaign');
);
我需要拦截的是Mandrill的JSON响应,例如:
[
"email": "destination@address.com",
"status": "sent",
"_id": "80e1ca49d3ed4cbb9d9a3d932c0a14f8",
"reject_reason": null
]
如何使用 Laravel 的 Mandrill 集成驱动程序做到这一点?
如果需要实时解释响应,我可以使用 Mail::send 而不是 Mail::queue。
【问题讨论】:
【参考方案1】:在您的邮件函数之前放置一个变量,如下所示:
$response = Mail::queue('emails.customerspromo', array('messaggio'=>$content, 'disclaimer'=>$disclaimer, 'user_email'=>$to, 'user_id' =>$uid), function($message) 使用 ($sender, $to, $subject) $message->from('my@address.it', $sender); $message->to($to); $消息->主题($主题); $message->setCharset('UTF-8'); $message->getHeaders()->addTextHeader('X-MC-GoogleAnalytics', 'www.my-site.it'); $message->getHeaders()->addTextHeader('X-MC-GoogleAnalyticsCampaign', 'my-campaign'); );它仍然可以工作,但现在您可以看到 mandrill 的响应。
【讨论】:
以上是关于Laravel 4 & Mandrill JSON 响应的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Laravel 4 中安排 Mandrill 邮件?
无法使用 laravel + mandrill 发送 html 电子邮件
Laravel - 不使用 mandrill 发送的电子邮件