繁体   English   中英

Laravel:Auth无法登录

[英]Laravel :auth cannot login

我正在尝试在laravel中实现身份验证功能

这是我的帖子登录功能

public function postLogin(Request $request){

    if (Auth::attempt(['email' => $request->get('email'), 'password' => $request->get('password')])){
        return redirect()->route('index');}
else{
        return 'not entered ';
    }
}

但是,我not entered每次都收到not entered

我的密码以纯文本格式存储在数据库中(未散列)。

您是否知道,当您使用Auth::attempt()并传递密码init时,laravel会为您哈希密码。例如,您的表中有123456密码。 那么您正尝试使用Auth::attempt()登录。.您的输入密码将更改为“ kjdfklsjgkjfglkjdgkjdfg”这个..现在您知道了吗? 为什么您的方法返回“未输入”而不是重定向到管理路由

尝试在必须使用哈希外观Hash::make($password)或全局函数bcrypt($password)地方写一个种子,您将在数据库中获得一个哈希的密码。 之后,您将可以成功使用Auth :: attempt()

并且最好使用$ request-> input(),您知道它看起来不错! :)

尝试使用$ request-> input()代替$ request-> get()

public function postLogin(Request $request){

  if (Auth::attempt(['email' => $request->input('email'), 'password' => $request->input('password')])){
        return redirect()->route('admin');
    }else{
        return 'not entered ';
    }
}

祝您编码愉快!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM