1. 程式人生 > 實用技巧 >laravel auth認證

laravel auth認證

0、修改配置,修改config下的auth.php

將‘model’ 修改為 對應的 user模型

 'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => \App\Model\User::class,
        ],

1、模型類繼承auth的user

1.1引入並起別名

use Illuminate\Foundation\Auth\User as AuthUser; 

1.2繼承AuthUser

class User extends AuthUser
{
    //守衛
    //拒絕新增的欄位
    protected $guarded = [];
}

2、應用

2.1登入(attempt的使用)

        $post = $this->validate($request, [
            'username' => 'required',
            'password' => 'required',
        ], [
            'username.required' => '賬號是必填的',
            'password.required' => '密碼是必填的',
        ]);
        
//如果登入成功 if (auth()->attempt($post)) { return 'sss'; } //登入失敗 return redirect(route('admin.login'))->withErrors(['error'=>'登入失敗!']);

2.2退出

auth()->logout();

3、常用api

     //檢查使用者是否登入
        //登入則返回true,未登入返回false
        auth()->check();
        
        
//未登入返回true(代表是遊客),登入返回false auth()->guest(); //獲取使用者的資訊 //如果使用者沒有登入,則返回空值 null auth()->user(); auth()->id();