Laravel (8.x) 微风:他们如何在 verify.verify 路由上使用中间件“auth”

问题描述

默认的 Breeze 身份验证安装使用 RegisteredUserController 来注册新用户,效果很好。

Route::post('/register',[RegisteredUserController::class,'store']) 
                ->middleware('guest');

在下一步中,'verification.verify' 路由会抛出一个未经身份验证的异常,因为用户仍然需要被验证。

Route::get('/verify-email/{id}/{hash}',[VerifyEmailController::class,'__invoke'])
                ->middleware(['auth','signed','throttle:6,1'])
                ->name('verification.verify');

我的 RegisteredUserController 确实做了一个 Auth::login 但这并没有使用户通过身份验证路由(返回 null),从“verification.verify”路由中删除中间件身份验证使其工作(但这不是 Breeze配置,我想要)。

    {

        $request->validate([
            'name' => 'required|string|max:255','email' => 'required|string|email|max:255|unique:users','password' => 'required|string|confirmed|min:8',]);

        Auth::login($user = User::create([
            'name' => $request->name,'email' => $request->email,'password' => Hash::make($request->password),]));

        event(new Registered($user));

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)