検索

ホームページ  >  に質問  >  本文

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

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

PHPzPHPz2896日前395

全員に返信(4)返信します

  • 巴扎黑

    巴扎黑2017-04-10 15:30:02

    没有什么作用具体?

    返事
    0
  • 阿神

    阿神2017-04-10 15:30:02

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

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

    返事
    0
  • 怪我咯

    怪我咯2017-04-10 15:30:02

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

    返事
    0
  • PHPz

    PHPz2017-04-10 15:30:02

    正好解决问题

    返事
    0
  • キャンセル返事