laravel Auth验证用户功能
一、配置config文件夹下的auth.php
'guards' => [
'web' => [
'driver' => 'session',
'provider' => 'users',
],
'api' => [
'driver' => 'token',
'provider' => 'users',
'hash' => false,
],
'admin' => [
'driver'=>'session',
'provider'=>'admins'
]
],
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\User::class,
],
'admins' => [
'driver'=>'eloquent',
'model'=>App\Models\Admin::class
]
],
二、model新增Admin.php
注意引用正确的类来继承
use Illuminate\Foundation\Auth\User as Authenticatable;
class Admin extends Authenticatable
{
protected $table = 'admin';
protected $fillable = [
'username', 'password',
];
// protected $hidden = [
// 'password'
// ];
public static $rules = [
'username'=>'required',
'password'=>'required'
];
}
三、使用
use Illuminate\Support\Facades\Auth;
$credentials = $request->only('username', 'password');
if(Auth::guard('admin')->attempt($credentials)){
return response()->json(['code' => 200, 'msg' => '登录成功']);
}else{
return response()->json(['code' => 403, 'msg' => '用户名或密码错误']);
}