首页 > 解决方案 > 如何过滤带有日期和时间的退回邮件?[邮筒,laravel]

问题描述

我目前正在使用mailgun api /bounces并且我收到了退回的电子邮件,但它所有退回的电子邮件都没有过滤器。但实际上我只想要最后 1 小时的退回电子邮件。我怎么会变成这样?

目前我正在使用

$response = Http::get('https://api:'
                    . env('MAILGUN_SECRET')
                    . '@api.mailgun.net/v3/'
                    . env('MAILGUN_DOMAIN')
                    . '/bounces');

我检查了 mailgun 文档。我没有得到任何解决方案。任何人都可以帮助我找到解决方案。谢谢。

标签: laravelmailgunlaravel-mail

解决方案


实际上,退回 API有退回电子邮件列表,因此我们无法对其进行过滤。因此,如果我们想过滤,那么我们使用下面的事件 api来处理上述场景。

        $end = Carbon::now()->toRfc2822String();
        $begin = Carbon::now()->subHour()->toRfc2822String();
        
        $response = Http::get('https://api:'
                            . env('MAILGUN_SECRET')
                            . '@api.mailgun.net/v3/'
                            . env('MAILGUN_DOMAIN')
                            . '/events', [
                                'event' => 'failed',
                                'begin' => $begin,
                                'end' => $end,
                                'ascending' => 'yes'
                            ]);

这样我解决了我的问题。我没有得到这个问题的任何答案,所以我添加了我的答案,它会在遇到同样问题时帮助别人。谢谢。


推荐阅读