logo

  • 欢迎各位友链


  • 首页
  • 关于
  • 技术文章
  • 资源分享
  • 微语
  • 相册
  • 优秀博客
  • 留言

Laravel 使用 Captcha 登录验证码

 2019/12/14
 Garlic
 0
 587
“ 安装captchacomposerrequiremews/captcha配置config/app.php]添加以下配置'providers'=>[//...Mews\Captcha\CaptchaServiceProvider::class,]'aliases ”
Laravel 使用 Captcha 登录验证码

安装 Captcha

composer require mews/captcha

配置

在 config/app.php 添加以下配置

'providers' => [
    // ...
    Mews\Captcha\CaptchaServiceProvider::class,
]
'aliases' => [
    // ...
    'Captcha' => Mews\Captcha\Facades\Captcha::class,
]

生成自定义配置文件

php artisan vendor:publish

运行之后,就可以在 config/captcha.php 中进行配置了。

注:如果运行后提示输入框请参考这个教程[Laravel执行 php artisan vendor:publish 卡住问题解决方法]

使用 Captcha 为 auth 组件添加验证码功能

在登录视图中增加验证码的选项,可以加到密码和 remember me 之间

/resources/views/auth/login.blade.php

<div >
 <label for="captcha" >验证码</label>
   <div >
     <div >
       <input id="captcha"  type="captcha" name="captcha" value="{{ old('captcha') }}" required>
       @if($errors->has('captcha'))         <div >
           <p ><strong>{{$errors->first('captcha')}}</strong></p>
         </div>
       @endif     </div>
     <div >
       <img src="{{captcha_src()}}" onclick="this.src='{{captcha_src()}}'+Math.random()">
     </div>
   </div>
 </div>

重写 AuthController 登录验证方法,并自定义提示信息: 修改 App\Http\Controllers\Auth\LoginController

#首先要引入如下代码:use Illuminate\Http\Request;

# 重写 validateLogin 方法:

#在验证里面加入验证码的规则验证即可
/**
 * DESC: 重写 AuthenticatesUsers 登录验证方法,并自定义提示信息;
 * 原验证方法 Illuminate\Foundation\Auth\AuthenticatesUsers
 * @param Request $request
 */
protected function validateLogin(Request $request){
    $this->validate($request, [
            $this->username() => 'required|string',
            'password' => 'required|string'
            'captcha' => 'required|captcha',
    ],[
            'captcha.required' => '请填写验证码',
            'captcha.captcha' => '验证码错误',
    ]);
}

完成后,刷新登录页面即可完成安装了


支付宝 微信
 71

PHP Laravel
  • 本文链接: Laravel 使用 Captcha 登录验证码 | Garlic`s Blog
  • 版权声明:若无特殊注明,本文皆为《Garlic`s Blog》原创,转载请保留文章出处。
  • 备注:相关侵权、举报、投诉及建议等,请发E-mail:php_garlic@163.com。
 宝塔面板安装云锁Nginx自编译web防护教程
 Laravel执行php artisan vendor:publish卡住问题解决方法
  • 日常开发的效率提升工具
    日常开发的效率提升工具
  • 宝塔7.6.0去除登陆限制,及强制跳转 /bind解决方法
    宝塔7.6.0去除登陆限制,及强制跳转 /bind解决方法
  • Laravel 常用扩展包
    Laravel 常用扩展包
  • Laravel route() 方法生成 HTTPS 链接
    Laravel route() 方法生成 HTTPS 链接
暂无评论,快抢沙发吧~
  • 😋 支持Emoji表情,可用的 Emoji 请见 🤘 👉 Emoji 列表 ⭐ ✨
 请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!



 验证码
Garlic
Garlic
你能够拥有梦想,而且梦想能够实现,网络是离你梦想最近的地方!
 269
 关注 公众号
1151 本站已勉强运行
PV 今日pv
27 文章数量
文章搜索
最新评论
  • nevermore
    nevermore 2020/12/16
    文章

    博主这个网站搭建花了多久的哈。扒代码花了多久的哈

  • 演员
    演员 2020/10/03
    文章

    老哥这板子好帅,能分享哈不

 点击排行
 最多点赞
  • 宝塔面板安装云锁Nginx自编译web防护教程
    宝塔面板安装云锁Nginx自编译web防护教程
    2019/12/06浏览:751
  • Laravel Eloquent: 使用 hasMany 来处理『无限极分类』
    Laravel Eloquent: 使用 hasMany 来处理『无限极分类』
    2020/01/24浏览:725
  • PHP常用的字符串函数
    PHP常用的字符串函数
    2020/01/26浏览:627
  • Laravel Eloquent: 使用 hasMany 来处理『无限极分类』
    Laravel Eloquent: 使用 hasMany 来处理『无限极分类』
    2020/01/24点赞:100
  • 清除Windows 垃圾
    清除Windows 垃圾
    2020/09/30点赞:87
  • 日常开发的效率提升工具
    日常开发的效率提升工具
    2021/10/19点赞:81
 标签
常用工具 Windows 宝塔 Office SoftEther 负载均衡 百度网盘 Yii Thinkphp Apache
 友情链接
Laravel China 社区 椰子皮博客 站点导航
首页 Emoji 表情列表 网站地图
CopyRight © 2019 - 2023 - Garlic`s Blog - 粤ICP备17064364号-1
声明: 本站资源来源自网络,如有侵权,请联系站长删除! 本站前端模板采用 椰子皮博客