您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> PHP >> laravel54自带的用户认证如何在注册前执行中间件?谢谢大家~

laravel54自带的用户认证如何在注册前执行中间件?谢谢大家~

来源:网络整理     时间:2018/1/27 1:04:39     关键词:

关于网友提出的“ laravel54自带的用户认证如何在注册前执行中间件?谢谢大家~”问题疑问,本网通过在网上对“ laravel54自带的用户认证如何在注册前执行中间件?谢谢大家~”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: laravel54自带的用户认证如何在注册前执行中间件?谢谢大家~
描述:

我的问题是这样的,现在呢我用的laravel自带的用户认证因为毕竟方面,现在碰到个问题,就是碰到一些用户恶意注册,我想在新用户注册提交前执行一个判断代码,请问怎么个思路,谢谢大家~


解决方案1:

感谢以上几位解答

解决方案2:

我的产品是把注册用户跟印证用户分开。必须要电子邮件作为注册的一部分。然后我会发送一封印证邮件到该邮箱,只要用户在3天之内点击了这个印证链接,我就将用户从【注册用户】升级成为【印证用户】然后在权限上对2中用户做了处理。这样又不会失去真实用户注册体验,也会屏蔽掉一些捣乱分子。

解决方案3:

像上面说的自定义中间件后,在App\Http\Controllers\Auth\RegisterController里的构造函数中

/**
 * Create a new controller instance.
 *
 * @return void
 */
public function __construct()
{
    $this->middleware('guest');
    $this->middleware('checkIp');
}
解决方案4:

可以使用自定义中间件来解决。

运行Artisan 命令 make:middleware 创建新的中间件:
php artisan make:middleware CheckIpIsRegistered

app/Http/Kernel.php 注册中间件:

protected $routeMiddleware = [
    'auth' => \Illuminate\Auth\Middleware\Authenticate::class,
    'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class,
    'bindings' => \Illuminate\Routing\Middleware\SubstituteBindings::class,
    'can' => \Illuminate\Auth\Middleware\Authorize::class,
    'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class,
    'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class,

    'checkip' => CheckIpIsRegistered::class,
];

添加中间件到路由

Route::post('user/register', function () {
    //
})->middleware('checkip');

以上介绍了“ laravel54自带的用户认证如何在注册前执行中间件?谢谢大家~”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/4536099.html

相关图片

相关文章