Laravel要重写Router.php里面的`auth`方法,应该在啥地方重写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Laravel要重写Router.php里面的`auth`方法,应该在啥地方重写相关的知识,希望对你有一定的参考价值。

默认是使用eloquent作为认证驱动器,所以看看Illuminate\Auth\EloquentUserProvider里面的实现

public function validateCredentials(UserContract $user, array $credentials) $plain = $credentials['password']; return $this->hasher->check($plain, $user->getAuthPassword());

所以如果要改验证的逻辑,可以继承原有的驱动器,然后重写validateCredentials里面的逻辑

class TestUserProvider extend EloquentUserProvider public function validateCredentials(UserContract $user, array $credentials) $plain = $credentials['password']; return md5($plain) == $user->getAuthPassword();

最后设置驱动器,建议加载AppServiceProvider的boot()里面

Auth::setProvider(new TestUserProvider());
参考技术A 这个我不是太清楚,建议楼主去后盾人那里看看,哪里有很多相关的视频教学

以上是关于Laravel要重写Router.php里面的`auth`方法,应该在啥地方重写的主要内容,如果未能解决你的问题,请参考以下文章

laravel登录验证

Laravel输出JSON时设定输出字段的几种情况总结

在Laravel 5.8中覆盖默认的Auth路由

ListView之在Activity里面重写item里面的事件

java:放入Set中的对象一定要重写hashCode()和equals()吗?

Apache 为 Laravel /public 重写