php - 如何在 Laravel 中使用另一个字段进行身份验证?

标签 php laravel authentication

在手册中,我可以阅读:

By default, Laravel uses the email field for authentication. If you would like to customize this, you may define a username method on your LoginController



但是就我而言,我想使用 unique_id我的公司提供的用于验证我的用户的字段。该字段不是用户名,所以我对使用 username() 感到很抱歉得到这个的方法。是否有另一种方法可以告诉 Laravel 身份验证使用除 email 以外的其他内容?验证我的用户?

最佳答案

您可以覆盖 validateLogincredentials Auth/LoginController 中的方法

protected function validateLogin(Request $request)
{
    $request->validate([
        'unique_id' => 'required',
        'password' => 'required|string',
    ]);
}

protected function credentials(Request $request)
{
    return array_merge($request->only('unique_id', 'password'));
}

关于php - 如何在 Laravel 中使用另一个字段进行身份验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60997946/

相关文章:

PHP - 一直调用

php - 使用 JSON 文件而不是数据库?

php - MySQL 和用户身份验证 - 内部查询与查询后的有力证据?

php - 在金字塔结构中生成随机玩家优势 (PHP)

php - session 固定 VS XSRF/CSRF

javascript - UniSharp/laravel-ckeditor 在 laravel 5.7 中不工作

javascript - 拉拉维尔 5.8 : Why $request->hasFile returns false

php - 在 Laravel 中自定义模型存储的验证规则

java - dropwizard 中的身份验证流程

authentication - 使用Elastic Search X-Pack进行最终用户身份验证