Heim  >  Artikel  >  Backend-Entwicklung  >  laravel 5 route里使用中间件没作用

laravel 5 route里使用中间件没作用

WBOY
WBOYOriginal
2016-06-06 20:36:381031Durchsuche

routes.php文件里加上
Route::get('/api/index','ApiController@index',['middleware'=>'auth']);
但是发现这个中间件没作用,google了一下,route里都是这么写的,但为啥我这里没作用?

回复内容:

routes.php文件里加上
Route::get('/api/index','ApiController@index',['middleware'=>'auth']);
但是发现这个中间件没作用,google了一下,route里都是这么写的,但为啥我这里没作用?

没有什么作用具体?

看看 Kernel.php 中的 $routeMiddleware 数组中是否包含

'auth' => 'App\Http\Middleware\Authenticate',

nathan_wu 回复是正确的,是我的写法有问题,正确的写法应该是下面这样
Route::get('home', [
'middleware' => ['auth'], //use the roles middleware
'uses' => 'HomeController@index',
]);
但是最初我是google到老外的一篇文章,它里面的写法是酱紫的,
$router->get("/awesome/sauce", "AwesomeController@sauce", ['middleware' => 'auth']);
所以就模仿他的写法,结果中间件没起作用,可能是laravel版本的问题吧

正好解决问题

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn