Laravel 8 身份验证契约
我们已经剖析了 UserProvider 的每个方法。下面再来看看 Authenticatable 契约。切记,用户提供器的 retrieveById、 retrieveByToken 和 retrieveByCredentials 方法将返回此接口的实例:
<?php
namespace Illuminate\Contracts\Auth;
interface Authenticatable
{
public function getAuthIdentifierName();
public function getAuthIdentifier();
public function getAuthPassword();
public function getRememberToken();
public function setRememberToken($value);
public function getRememberTokenName();
}这个接口很简单。 getAuthIdentifierName 方法应该返回用户 「主键」 列的名字, getAuthIdentifier 方法则返回用户 「主键」。在 MySQL 后台,它会是自增主键。 getAuthPassword 方法应该返回用户的哈希密码。此接口允许身份验证系统与任一 User 类一直工作,不管使用的是哪种 ORM 或抽象存储层。默认情况下,Laravel 的 app\Models 目录会包含一个实现了此接口的 User 类,你可以以这个实现示例作为参考。