2016-12-12 83 views
1

我刚刚开始学习流明微框架,并遇到麻烦,因为我的中间件似乎不工作。这是我的代码。中间件不工作laravel的流明

//defined middleware in route 
    $app->get('/hello/{name}', ['middleware' => 'shield','uses' => '[email protected]']); 

//registered middleware in app.php 
    $app->routeMiddleware([ 
     'shield' => App\Http\Middleware\Agemiddleware::class, 
    ]); 

这是中间件的代码

public function handle($request, Closure $next){ 
     if ($request->input('name') == "18") { 
      echo "hate yew"; 
     } 

     return $next($request); 
    } 
} 
+1

你是否尝试dd()而不是echo? Laravel在其生命周期结束时可能不会呈现回波输出。 –

+1

你确实试图调用'/ hello/18'? – Daan

+0

我想要做的是如果输入字段值是''== 18''那么它应该回声的东西。但我的代码只是忽略了中间件! –

回答

0

修复你的类名(只是约定)。 AgeMiddleware(重命名文件和类)。

转到引导/ app.php并注册您的路线中间件

$app->routeMiddleware([ 
    'shield' => App\Http\Middleware\AgeMiddleware::class, 
]); 

确保你把这个片断上面的回报声明。

Hit /hello/18

如果这不起作用,你可能有另一条路线上面得到/家/东西获取请求。