laravel 使用自带的 middleware('auth') 做身份认证 有问题啊。登录后 过一段时间,必须要清除 cookie 才能再次登录,到现在还没能找到原因。。
可能是我描述不清楚 我详细说一下吧
我是用auth中间件去实现用户权限管理的,登录 注册等也是,但我发现 如果是登录过期后 再次去登录的时候 ,界面会一闪而过 ,也没报错。但删除浏览器COOKIE后 又能正常登录。
登录代码:
//登录方法
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]);
}
}
1
wzyefd 2019-09-19 08:50:50 +08:00 via iPhone
有 logout 吗
|
2
InternetExplorer 2019-09-19 08:54:39 +08:00 via Android
默认要没有登录的客户端才能访问登录接口
|
3
Varobjs 2019-09-19 08:58:05 +08:00 via Android
你知道这个实现原理吗,就说有问题
|
4
mingyuexin 2019-09-19 09:08:46 +08:00
确定有问题吗?
|
5
zachlhb 2019-09-19 09:12:42 +08:00 via Android
你可以自己实现
|
6
Sor 2019-09-19 09:17:23 +08:00
请详细描述你遇到的什么问题
|
7
atan 2019-09-19 10:07:33 +08:00 via Android
所有的网站不都是要清除 cookie 后( Logout 也算清除 cookie 吧)才能再次登陆吗?
|
8
JasonTsang OP @wzyefd 没有 LOGOUT 自动过时的就会出现这样的问题、。
|
9
JasonTsang OP |
10
JasonTsang OP @InternetExplorer 哪这个怎么破?登录过时 算有登录?我只是登录过时 过时后 ,要求重新登录,再登录就无法登录了。只能清除 COOKIE 才能登录。
|
11
mamahaha 2019-09-19 14:06:21 +08:00
你可能是 migrate:xxx 了。
|
12
xstoop 2019-09-19 14:12:11 +08:00
再次去登录的时候 ,界面会一闪而过?
什么界面一闪而过?闪过到哪里了? |
13
JasonTsang OP @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]); } } ``` |
14
Sor 2019-09-19 16:02:04 +08:00
@JasonTsang 登录认证时的 guard 和鉴权时的 guard 是否一致,当前 config auth.guards 配置了几个
|
15
JasonTsang OP @Sor 肯定一样,不然 怎么能登录进去。
|