第一步:配置方面
在config下的auth.php配置guards 和 providers
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'cloud' => [
'driver' => 'session',
'provider' => 'member_cloud',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
'hash' => false,
],
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
'member_cloud' => [
'driver' => 'eloquent',
'model' => App\Membercloud::class,
],
// 'users' => [
// 'driver' => 'database',
// 'table' => 'users',
// ],
],
第二步:数据库方面
1 新建自定义用户表 ,其中remember_token 用于是否记住用户
2 在app目录下新建Membercloud.php 文件对应,文件名称取决于配置文件中的名称 复制User.php修改
第三步:控制器中的使用
Auth::guard('cloud')->attempt(['phone'=>$account,'password'=>$pass,'memberType'=>$memberType]);//验证登录
$auth= Auth::guard("tcloud")->check(); //验证是否登陆
Auth::guard('tcloud')->logout();//退出当前登录
指定用户为认证信息
$user= Membercloud::query()->where(['user'=>$user,'memberType'=>$memberType])->first();
Auth::guard('tcloud')->login($user);
$user = Auth::guard('tcloud')->user();//获取用户信息
$user = json_decode( json_encode( $user),true);
Hash::make($password); //验证码密码