V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
JasonTsang
V2EX  ›  PHP

laravel auth 授权登录的问题

  •  
  •   JasonTsang · 2019-09-23 11:41:15 +08:00 · 4360 次点击
    这是一个创建于 1648 天前的主题,其中的信息可能已经有所发展或是发生改变。

    重写 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) === true) {
                // 认证通过... 这里第一次能登录,当一段时间后 登录失效 重新请求登录的时候 即无法登录,
                // 但我清空缓存即又能登录。重复测试发现,如果在没过期就手动调用 Auth::logout() 哪么就			// 会出现这样的问题。然后我试着在 Auth::logout()之后 手动清空所有 session
                //$request->session()->flush(); 发现依然无法解决,只有在后台点击清空缓存 才可以重新登				//录
                return redirect(route('home'))->with('message', ['登录成功!',1]);
            }else{
                return redirect(route('login'))->with('message',  ['登录失败!',2]);
            }
    
        }
        
    
    4 条回复    2019-09-23 18:51:59 +08:00
    w516322644
        1
    w516322644  
       2019-09-23 13:24:22 +08:00
    Auth::attempt(array $credentials = [], $remember = false);
    JasonTsang
        2
    JasonTsang  
    OP
       2019-09-23 17:13:54 +08:00
    @w516322644 不就是这样吗?
    w516322644
        3
    w516322644  
       2019-09-23 18:42:29 +08:00
    @JasonTsang 我最开始以为,那个 false,是保持登录的意思,后来看了,默认就是 false。理解错了。

    重新请求登录接口的时候的参数啥的都一样吗?无法登录返回的结果是啥很重要。
    mamahaha
        4
    mamahaha  
       2019-09-23 18:51:59 +08:00
    登陆成功后应该返回登录前的那个页面,这样用户才会喜欢你。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3152 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 12:30 · PVG 20:30 · LAX 05:30 · JFK 08:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.