Laravel RouteNotFoundException 自定义中间件中的路由“登录”

问题描述 投票:0回答:1

我在 Laravel 中遇到了一个问题,在自定义中间件中,我的路由“登录”出现了

RouteNotFoundException

namespace App\Http\Middleware;

use Illuminate\Auth\Middleware\Authenticate as Middleware;

class Authenticate extends Middleware
{
    protected function redirectTo($request)
    {
        if (! $request->expectsJson()) {
            return route('login');
        }
    }
}

这是我收到的错误消息:

Symfony\Component\Routing\Exception\RouteNotFoundException:路由 [登录] 未定义。

我已经验证了我的路由文件中定义了“登录”路由,并且我尝试清除路由缓存,但问题仍然存在。有人可以帮助我理解为什么会出现此错误以及如何解决它吗?任何见解或建议将不胜感激。

php laravel routes laravel-8 middleware
1个回答
0
投票

来自文档

路由函数为给定的named路由生成一个URL:

您需要为路线指定一个名称。

Route::get('login', [YourController::class, 'method']);                 // login route
Route::get('login', [YourController::class, 'method'])->name('login');  // named login route
© www.soinside.com 2019 - 2024. All rights reserved.