Skip to content

Laravel 11 - Web routes $request→user() and Auth::user() getting null. API routes work fine. #290

@jitendrajp

Description

@jitendrajp

laravel upgraded 8 to 11, I'm getting $request→user() and Auth::user() null value in web route.

routes/web.php

Route::get('customer/{id}', [FrontendController::class, 'home']);

app/Http/Controllers/FrontendController.php

use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

public function home(Request $request)
{
    dd($request->user(), Auth::user());
}

bootstrap/app.php

->withRouting(
    web: __DIR__ . '/../routes/web.php',
    api: [
        __DIR__ . '/../routes/api/core.php',
        __DIR__ . '/../routes/api/user.php'
    ],
    commands: __DIR__ . '/../routes/console.php',
    health: '/up'
)
->withMiddleware(function (Middleware $middleware) {
    //dd($middleware->getMiddlewareGroups());
})
->withExceptions(function (Exceptions $exceptions) {
    //
})->create();

Middleware groups showing when dd($middleware->getMiddlewareGroups())

"web" => [
    0 => "Illuminate\Cookie\Middleware\EncryptCookies",
    1 => "Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse",
    2 => "Illuminate\Session\Middleware\StartSession",
    3 => "Illuminate\View\Middleware\ShareErrorsFromSession",
    4 => "Illuminate\Foundation\Http\Middleware\ValidateCsrfToken",
    5 => "Illuminate\Routing\Middleware\SubstituteBindings",
],
"api" => [
    0 => "Illuminate\Routing\Middleware\SubstituteBindings"
]

Config file

config/auth.php

'defaults' => [
    'guard' => 'api',
    'passwords' => 'users',
],

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],

    'api' => [
        'driver' => 'jwt',
        'provider' => 'users',
    ],
],

config/session.php

'driver' => 'file'

Your environment:

Q A
Bug? no / yes
New Feature? no / yes
Framework Laravel / Lumen
Framework version 11.x
Package version 2.7
PHP version 8.2

Expected behaviour

$request->user() or Auth::user() should be a logged-in user in the controller.

Actual behaviour

$request->user() and Auth::user() both are getting null

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions