laravel 使用自带的 middleware('auth') 有问题

2019-09-19 08:25:27 +08:00
 JasonTsang

laravel 使用自带的 middleware('auth') 做身份认证 有问题啊。登录后 过一段时间,必须要清除 cookie 才能再次登录,到现在还没能找到原因。。

5324 次点击
所在节点    PHP
15 条回复
wzyefd
2019-09-19 08:50:50 +08:00
有 logout 吗
InternetExplorer
2019-09-19 08:54:39 +08:00
默认要没有登录的客户端才能访问登录接口
Varobjs
2019-09-19 08:58:05 +08:00
你知道这个实现原理吗,就说有问题
mingyuexin
2019-09-19 09:08:46 +08:00
确定有问题吗?
zachlhb
2019-09-19 09:12:42 +08:00
你可以自己实现
Sor
2019-09-19 09:17:23 +08:00
请详细描述你遇到的什么问题
atan
2019-09-19 10:07:33 +08:00
所有的网站不都是要清除 cookie 后( Logout 也算清除 cookie 吧)才能再次登陆吗?
JasonTsang
2019-09-19 13:32:30 +08:00
@wzyefd 没有 LOGOUT 自动过时的就会出现这样的问题、。
JasonTsang
2019-09-19 13:41:03 +08:00
@Sor
@atan
@zachlhb
@mingyuexin
我补充了描述了 麻烦帮忙看看
JasonTsang
2019-09-19 13:42:32 +08:00
@InternetExplorer 哪这个怎么破?登录过时 算有登录?我只是登录过时 过时后 ,要求重新登录,再登录就无法登录了。只能清除 COOKIE 才能登录。
mamahaha
2019-09-19 14:06:21 +08:00
你可能是 migrate:xxx 了。
xstoop
2019-09-19 14:12:11 +08:00
再次去登录的时候 ,界面会一闪而过?
什么界面一闪而过?闪过到哪里了?
JasonTsang
2019-09-19 14:18:52 +08:00
@xstoop 登录表单提交后 直接又回到登录页面

看我登录的逻辑 如果登录成功后 应该是进入 /home 也就是会员中心的。后来发现 他是先跳转到 /home 这时估计又检测权限 结果又跳转到 login 页面。但问题就出在 Auth::attempt 应该是登录成功后才会跳到 home,哪么登录成功后为什么进入 home 后权限检测的时候又说他没成功?跳转回 login 页面?

```
//登录方法
public function login(Request $request){

$param = $request->all();

if($request->method() == 'GET'){
return \view('auth.login');
}

if (Auth::attempt(['phone' => $param['phone'], 'password' => $param['password']],false)) {
// 认证通过...
return redirect(route('home'))->with('message', ['登录成功!',1]);
}else{
return redirect(route('login'))->with('message', ['登录失败!',2]);
}

}

```
Sor
2019-09-19 16:02:04 +08:00
@JasonTsang 登录认证时的 guard 和鉴权时的 guard 是否一致,当前 config auth.guards 配置了几个
JasonTsang
2019-09-23 17:15:19 +08:00
@Sor 肯定一样,不然 怎么能登录进去。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/602000

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX