Route :: resource不支持auth:api

时间:2017-04-13 12:39:52

标签: php laravel api authentication laravel-passport

我使用护照进行 api身份验证,并将auth.php api gaurd配置为护照
我的一些路由API在auth:api组。我发送带有访问令牌的Authorization标头,它可以很好地检查用户。
但问题是,这种机制在Route :: post方法和\ Auth :: user() - > id返回用户id,

中效果很好
  

但在Route :: resource \ Auth :: user()中返回null。

我仔细检查了一切,似乎Route :: resource忽略了“auth:api”中间件。我还在我的资源控制器的__construct方法中测试了中间件。没有改变。感谢您的进一步帮助。

Route::group(['middleware' => ['auth:api']],function (){
    Route::post('update',['uses'=>'C_Update@handle']);
    Route::resource('contacts','C_Contacts',['only'=>['index','store','update','destroy']]);
});

1 个答案:

答案 0 :(得分:0)

最后我找到了解决方案。问题是因为__construct方法。 Authenticated用户尚未在构造方法中授权(我不知道为什么,如果有人知道请告诉我)。所以不幸的是我把\ Auth :: user放在了我路线的CRUD功能中。