Laravel 5.3 身份验证后重定向的自定义路径

2023-12-12

我有两种类型的用户:“供应商”和“客户”。我目前正在使用Laravel's built-in Auth Controllers(来自make:auth命令)来进行我的客户端用户身份验证。

由于我有两种用户,所以我改变了$redirectTo财产在LoginController, RegisterController, and ResetPasswordController to /client/home.

这是证明:

注册控制器 登录控制器

现在,它重定向到/client/home每次我成功完成注册、登录和密码重置。

但问题是当我在mysite.com/client/home已经,每当我想去mysite.com/register or mysite.com/login通过地址栏,它将重定向到mysite.com/home代替mysite.com/client/home...

我怎样才能让它重定向到mysite.com/client/home每当经过身份验证的用户尝试访问时/login or /register?


最简单的选择是为两个登录区域创建单独的控制器。以后管理起来会更容易,并且您可以更好地自定义行为。

默认文件夹结构如下所示:

app
|__Http
   |__Controllers
      |__Auth
         |__ForgotPasswordController.php
         |__LoginController.php
         |__RegisterController.php
         |__ResetPasswordController.php

您可以为客户端控制器创建一个附加文件夹,如下所示:

app
|__Http
   |__Controllers
      |__Auth
      |  |__ForgotPasswordController.php
      |  |__LoginController.php
      |  |__RegisterController.php
      |  |__ResetPasswordController.php
      |__Client
         |__Auth
            |__ForgotPasswordController.php
            |__LoginController.php
            |__RegisterController.php
            |__ResetPasswordController.php

这样您就可以自定义$redirectTo每个控制器单独的属性。

作为替代解决方案,您可以覆盖redirectPathRedirectsUsers 特征,通过创建redirectPath方法,并返回您想要的 URL:

public function redirectPath()
{
    if (\Request::is('client/*'))
    {
        return url('client/home');
    }

    return url('home');
}

第二种解决方案的优点是您还可以返回控制器操作和命名路由。我个人不喜欢路由到 URL,就好像我决定更改它们一样,那么我就必须在所有地方更改它们。使用控制器操作似乎是一个更好的主意,但如果稍后重构代码,您可能会遇到同样的问题。我更喜欢使用命名路由,因为我可以给它们一个合理的名称,并且永远不会再次更改它们,但仍然保持所有重定向正常工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Laravel 5.3 身份验证后重定向的自定义路径 的相关文章

  • 动态重新定义 PHP 类函数?

    我试图弄清楚如何动态导入大量 PHP 类函数 例如 class Entity public function construct type require once type functions php person new Entity
  • Ace Editor 自动完成和多种语言

    如何为 Ace 编辑器创建自动完成功能以及如何突出显示 php 中的 html javascript 和 csshttp ace ajax org http ace ajax org
  • 使用 ASP.Net 和 Ajax 的登录页面

    我正在尝试使用 html ajax 和 ASP NET 制作登录页面 数据确实传递给 ajax 函数 但是当我调试 asp 页面时 用户名和密码以 NULL 发送 该代码应该获取用户名和密码 然后返回用户 ID html页面 div Use
  • 测试 CodeIgniter 会话变量的正确方法是什么?

    获取以下代码片段 测试确保会话变量不为空的最佳方法是什么 如果稍后在我的脚本中 我调用以下内容 第一个打印正确 但在第二个我收到消息 未定义的变量 已登录 我尝试过使用 empty and isset 但两者均未成功 我还尝试使用向后执行
  • 通过 PDO 将双精度数插入 MySQL 时精度损失

    我遇到了这种非常烦人的行为 我想知道我是否做错了什么 或者这是否是故意的 如果是的话 为什么 每当我在 php 5 3 中有一个 double 类型的变量 并且想将其插入到数据库 MYSQL 5 0 的 double 类型字段中时 该值总是
  • 如何在 Yii2 应用程序中显示多个选择下拉列表中的选定值?

    我正在研究 Yii2 我正在使用这样的自定义数组创建多个选择下拉菜单 在控制器文件中 all groups Groups find gt where group created by id gt orwhere new Expression
  • AJAX 安全问题

    我希望能够解决一些关于 AJAX 安全性的问题 这是我试图理解的一个场景 假设我正在使用 AJAX 向页面请求一些半敏感材料 例如 我将把用户的 ID 传递给一个 php 文件 并返回一些关于他们自己的信息 现在 是什么阻止人们模拟此 Ja
  • PHP:解析器 asp 页面 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 早上好 我可以用 php 解析一个
  • 计算帖子中使用 WordPress 短代码的次数

    我有以下 WordPress 短代码功能 function wp shortcode static i 1 return i i return return add shortcode shortcode wp shortcode 这很好用
  • SQL 查询结果为字符串(或变量)

    是否可以将SQL查询结果输出到一个字符串或变量中 我的php和mysql不好 假设我有数据库 agents 其中包含列 agent id agent fname agent lname agent dept 使用此查询 sql SELECT
  • 重用 PDO 语句 var 会使进程崩溃

    我重用一个变量来存储两个不同的 PDO mysql 语句 stmt dbh gt prepare SELECT stmt gt execute stmt dbh gt prepare UPDATE crash here Error in o
  • Php Curl HTTP POST REQUEST 使用嵌套键值对设置自定义标头

    如何使用 Curl 在 php 中设置此标头 CustomInfo 元素是数组 嵌套键值对 AuthenticationInfo 元素是数组 嵌套键值对
  • 如何通过开始索引和结束索引提取子字符串?

    str HelloWorld sub substr str 3 5 echo sub prints loWor 我知道 substr 采用第一个参数 第二个参数是开始索引 而第三个参数是要提取的子字符串长度 我需要的是通过提取子字符串起始索
  • Symfony 4 生产模式错误处理页面内存耗尽

    我将我的项目设置为prod模式在 env除了自定义错误页面之外的所有内容似乎都有效 我将此作为我的 404 树枝模板 templates bundles TwigBundle Exception error404 html twig inc
  • 如何下载临时文件

    我正在尝试创建一个简短的 PHP 脚本 该脚本采用 JSON 字符串 将其转换为 CSV 格式 使用fputcsv 并使该 CSV 可作为下载的 csv 文件使用 我的想法是使用tmpfile 不用担心 cronjobs 或磁盘空间不足 但
  • 验证 LDAPS 连接的自签名证书

    我想从 Linux Linux 3 2 0 4 amd64 1 SMP Debian 3 2 51 1 x86 64 GNU Linux 客户端到 Windows 2012 服务器建立安全的 ldap 连接 ldaps 以更改活动中的用户密
  • 从 URL 任何文件类型创建图像

    我知道imagecreatefromgif https www php net manual en function imagecreatefromgif php imagecreatefromjpeg https www php net
  • Laravel 5 命名约定

    我对 Laravel 约定有点困惑 因为我是这个框架的新手 我正在关注 Jeffrey Way 他使用的 Laracasts 视频Plural对于控制器名称 E g 页面控制器 卡片控制器 帖子控制器 但如果我参考官方文档Laravel g
  • MySQL如何从多个表中获取数据

    我正在寻找 php MySQL jquery 的帮助 我有2张桌子 table1表 1 有 4 列 id 标题 desc thumb img tabel2表 2 有 3 列 id 表 id img 我只想将 2 个表与 get QS 的值进
  • Laravel 4.2 Composer 安装错误:“无法扫描类”

    我想通过 Composer 在新的 Laravel 4 2 安装上安装一些软件包 但是 我遇到了例外 这是我的作曲家文件 name laravel laravel description The Laravel Framework keyw

随机推荐

  • 从对象中提取名称与测试匹配的属性

    我有一个 props 对象 它将包含一组未知的属性 我想根据它们的前缀提取其中一些属性 我有一些有用的东西 太棒了 但看起来很啰嗦 我想知道是否有更惯用的方法 const props bingo 1 bongo 2 mingo 3 bang
  • R 的 bigvis 包不适用于 R 版本 3.0.1 吗?

    我正在开发一个旨在处理大数据的应用程序 但由于绘图点数量巨大 无法以有用的方式绘制数据图表 我最初的想法是创建一个小算法 根据数据的大小 将数据点分为大约 30 个子集 并取这些子集中所有点的平均值 顺便说一下这个实现的错误是什么 然后我了
  • 从 JFrame 中删除面板后如何处置 JPanel

    我创建了 2 个 Jpanel 它将添加到 JFrame 中 首先将一个 JPanel 添加到 JFrame 中 我使用了 JFrame 的 add 方法来添加 JPanel JPanel panel new JPanel JFrame j
  • Flask-WTF 表单在 GET 请求期间出现错误

    我有一个带有 Flask WTF 表单的 Flask 视图 当我在浏览器中加载页面时 表单总是有错误 即使我还没有提交它 为什么表单在提交之前就出现错误 app route methods GET POST def index form A
  • 如何在 Linux 上使用 Selenium IDE 下载文件对话

    我必须自动化一个测试 其中我必须下载 Excel 工作表 屏幕上会出现一个文件对话框 其中包含 确定 和 取消 按钮 单击 确定 按钮会下载一个 Excel 工作表 我使用 Java 作为自动化语言 我的操作系统是Linux 请建议如何自动
  • C# Winforms DataGridView 的视觉继承问题

    From here我创建了一个BaseForm 然后设置其所有BaseForm Designer cs private会员到protected 然后就有了视觉继承 衍生Form 现在我可以重新调整大小或修改派生中的所有控件Form在设计时除
  • exec() 通过命令行运行,但不通过网络运行

    我有一个 PHP 脚本涉及exec 它可以在命令行中正常运行 但不能在网络环境中运行 脚本很简单
  • 如果某个字段结果大于或等于另一个字段,我可以更改 背景吗?

    我正在 html 表中显示 mySQL 我想将 qty 的 TD 背景颜色更改为红色IF qty gt max or qty lt min 有没有一种简单的方法可以使用 jQuery 或 PHP 来做到这一点 我为示例简化了表格和 PHP
  • 错开或阶梯菜单

    我有一个菜单 是根据通常的无序列表创建的 我想使用 CSS 对其进行水平样式设置 以便每个菜单条目都略低于前一个条目 结果将是阶梯效应 Home News About Contact 上面的示例显示了每个菜单条目的全行位移 但我真正想要的是
  • 无符号右移函数不适用于负输入

    我正在寻找一种使用方法 gt gt gt 64 位版本 PHP 5 5 14 中 JavaScript 的函数 我发现这个功能在我的谷歌搜索中 function uRShift a b z hexdec 80000000 if z a a
  • jQuery .attr('value') 返回文本区域未定义

    我有一个页面 它通过 ajax 动态引入表单并将其显示在模态 div 中 位于覆盖整个页面的覆盖 div 之上 这是为了让他们在窗口关闭之前保存某些数据 除了一件事之外 一切都很好 save close form find name eac
  • 如何防止 iOS 14 Widget 打开应用程序并对回调做出反应

    因此 我已经阅读了几篇博客 帖子和苹果自己的人机界面指南 指出 iOS 14 小部件不是交互式的 但是 按下目标时可以传递到应用程序的短链接 苹果公司自己表示 小型小部件有一个单一的点击目标 中型和大型小部件有多个点击目标 好的 现在 当您
  • Java中如何获取当前时刻的年、月、日、时、分、秒、毫秒?

    如何在Java中获取当前时刻的年 月 日 时 分 秒和毫秒 我想让他们成为Strings 您可以使用以下的吸气剂java time LocalDateTime为了那个原因 LocalDateTime now LocalDateTime no
  • 获取 URL 的 Facebook 分享/点赞/评论计数

    今天之前 我使用以下 URL 来获取某个 URL 的 Facebook 分享 点赞 评论计数 https api facebook com method links getStats format json urls http stacko
  • Python——加速导入?

    我有 10000 个自定义 编译为 so 模块 我想在其中使用python 模块的使用是有后果的 模块是一个接一个地使用的 而不是同时使用的 通常 代码看起来像这样 list with all the paths to all module
  • load() 顺序执行,而不是与 jQuery 同时执行

    我正在开发一个网站 我想从导航栏中获取所有链接 并将链接页面中的 div 加载到一个大容器中 到目前为止我所拥有的是以下内容 nav a each function index var to load this attr href slid
  • 不要在循环内创建函数。 - jslint 错误

    我收到此 jslint 错误 不要在循环内创建函数 我无法更改导致此问题的 javascript 但是由于修改它的限制 我无法更改 因此 我想关闭此验证以检查特定 javascript 文件中是否存在此错误 对于这个js错误可以这样做吗 不
  • 如何重现特定的友好URL?

    我们正在尝试将 JSP XSLT 应用程序重构为 JSF 我们使用 CMS 进行内容管理 技术 使用 Mojarra PrimeFaces 2 2 1 和 Tomcat 6 29 的 JSF 2 0 数据结构的组织如下 有网站 站点包含频道
  • Node.js 中的延迟加载

    我想知道是否使用require 在node js中相当于延迟加载 例如 如果我有一个函数需要特定的 node js 包 而我的代码中其他任何地方都不需要这个包 那么我最好使用require 仅在调用该函数时才包含所需的包 由于我对 Node
  • Laravel 5.3 身份验证后重定向的自定义路径

    我有两种类型的用户 供应商 和 客户 我目前正在使用Laravel s built in Auth Controllers 来自make auth命令 来进行我的客户端用户身份验证 由于我有两种用户 所以我改变了 redirectTo财产在