Laravel Jetstream 如何实现用户登录后重定向到指定路由?
Laravel Jetstream 登录后自定义重定向到指定路由操作步骤
基础修改方案(绝大多数场景适用)
Jetstream 默认的登录后跳转地址统一存放在路由服务提供商的常量中,直接修改即可:
- 打开项目下的
app/Providers/RouteServiceProvider.php文件 - 找到如下代码行:
public const HOME = '/dashboard'; - 将默认值修改为你需要的目标路由:
public const HOME = '/admin/produit'; - 修改完成后执行
php artisan route:clear清除路由缓存,避免旧配置残留。
进阶自定义方案(需额外判断逻辑时使用)
如果你需要在跳转前添加权限判断、角色区分等自定义逻辑,可以通过重写Fortify的登录响应实现:
- 打开
app/Providers/FortifyServiceProvider.php文件 - 在
boot()方法中添加如下代码:use Laravel\Fortify\Contracts\LoginResponse; $this->app->instance(LoginResponse::class, new class implements LoginResponse { public function toResponse($request) { // 此处可以添加自定义判断逻辑,比如按用户角色跳转不同地址 return redirect()->intended('/admin/produit'); } }); - 如果需要注册、密码重置等其他认证场景也跳转到同一地址,只需重写对应的响应契约即可,对应契约分别为
RegisterResponse、PasswordResetResponse。
修改完成后退出当前账号重新登录,即可验证跳转效果。
内容的提问来源于stack exchange,提问作者OMAR CHAARI
相关产品推荐
相关产品推荐

