基于Laravel 4模式的滤波器



我有以下过滤器:

Route::filter('security', function()
{
   //do security checks
   //send to my gateway controller and test() method
});
Route::when('/gateway', 'security');

以上似乎不起作用,我哪里出了问题?

  1. 我应该在过滤器中放入什么来将测试方法加载到网关控制器中?

  2. 如何使用测试该调用是否为ajax调用

    请求::ajax()

为了使此代码工作,您需要创建一个路由/gateway

Route::filter('security', function()
{
    if(Request::ajax()) 
    {
        //do security checks
        return Redirect::action('GatewayController@test');
    }
});
Route::when('gateway', 'security');
Route::get('/gateway', 'GatewayController@test');

请注意,斜线/已在Route::when('/gateway', 'security');中删除。这是因为路由器在根据当前请求的路径信息检查注册模式时添加了一个斜杠

最新更新