目前,如果Laravel未登录(例如 /auth/login
),则会将用户重定向到其他URL . /auth/login
包含用于检查用户是否提供了登录凭据的逻辑,在这种情况下,它们被重定向到另一个页面(例如 /home
) .
(这是正确的吗?我还在学习 . )
我想改变这个功能 . 理想情况下,当用户访问 /
或 /index.php
时,Laravel会检测到他没有登录并返回不同的视图(登录表单)和 not 重定向 . 用户将在导航栏中看到 /#/users
,而不是 /auth/login
. 登录表单将提交到同一页面 .
现在,当Laravel检测到用户未登录但 Auth::check()
正常工作时,它会将用户登录并继续原始视图 .
我想这样做的原因是Angular视图导航仍然有效 . 由于重定向,#param( /#/users
)丢失,我们只能将用户重定向到仪表板 .
这可能是Laravel吗?我会对学习隐藏所有当前功能的地方感到满意,所以我可以从那里开始 .
1 回答
Laravel会将用户重定向到auth / login,然后在身份验证后将其重定向回原始视图 .
防止这种情况发生的一种方法是使用Laravel作为API资源,让Angular应用程序控制用户界面和操作 .
例如,当用户登陆“/”时,您的Angular应用程序将通过ajax调用从Laravel API收集所有必要的数据 . 第一个ajax调用是检查用户是否经过身份验证,如果没有,请使用Angular显示带有登录表单的模式 . 然后使用表单通过Laravel API对用户进行身份验证 .
这样您的网址和当前视图就不会更改,并且您可以完全控制Angular应用 .
只是一个想法...希望它有所帮助 .