Php 使用Laravel 4在管线组上添加更多过滤器选项
我正在使用postmarkapp的入站服务通过网络钩子接收JSON格式的电子邮件。 在我的例子中,我有一个EmailController,它接受HTTP POST来存储邮件 其设置如下:Php 使用Laravel 4在管线组上添加更多过滤器选项,php,rest,routes,laravel,laravel-4,Php,Rest,Routes,Laravel,Laravel 4,我正在使用postmarkapp的入站服务通过网络钩子接收JSON格式的电子邮件。 在我的例子中,我有一个EmailController,它接受HTTP POST来存储邮件 其设置如下: Route::group(array('before' => 'auth'), function() { Route::resource('emails', 'EmailController'); }); 我需要路由组不筛选与控制器上的存储操作相关的帖子。 我试过使用: array('befor
Route::group(array('before' => 'auth'), function()
{
Route::resource('emails', 'EmailController');
});
我需要路由组不筛选与控制器上的存储操作相关的帖子。
我试过使用:
array('before' => 'auth', 'except' => 'post')
array('before' => 'auth', 'except' => 'store')
所以我真的不知道该在哪里做。可能在过滤器里?
另外,在执行异常时是否使用操作名或HTTP动词
作为额外费用:
我也不完全喜欢像那样向所有人开放路线行动。关于如何确保只有邮戳应用程序发布在那里,有什么想法吗
谢谢 创建您自己的过滤器,并为其添加适当的逻辑。例如:
Route::get('test', ['before' => 'foo']);
Route::filter('foo', function($route, $request) {
if ($request->getClientIp() === 'xxx.xxx.xxx.xxx')
{
//...
}
if ($request->getMethod() === 'POST'))
{
//...
}
});
```
还可以为更复杂的过滤器创建过滤器类。阅读中的部分。我不确定,但也许你可以将与帖子相关的路线放在小组之外?