首页 > 解决方案 > Auth::id() 返回 null laravel

问题描述

我有一个功能

public function index(){
   $users = User::doesntHave('roles')->latest()->paginate()->except(Auth::id());
   return UsersResource::collection($users);
}

当我 dd 时,Auth::id()即使我在控制器上声明了 auth 外观,它也会返回 null

use Illuminate\Support\Facades\Auth;

这是我存储在里面的路线api.php

Route::resource('users','Users\AdminUsersController')->except([
    'create', 'edit'
]);

标签: phplaravellaravel-5

解决方案


auth:api在中间件中添加您的身份验证保护路由

Route::post('login','LoginController@login');

Route::middleware(['auth:api'])->group(function () {

    Route::resource('users','Users\AdminUsersController')->except([
    'create', 'edit'
    ]);

    //other authenticated Routes goes inside this block

}); 

对于 Api 身份验证,我建议您查看https://laravel.com/docs/5.6/passport


推荐阅读