安装扩展包

使用 Composer 安装:

  composer require "mews/captcha:~2.0"

运行以下命令生成配置文件 config/captcha.php:

  php artisan vendor:publish --provider='Mews\Captcha\CaptchaServiceProvider'

我们可以打开配置文件(config/captcha.php),查看其内容:

<?php

return [
//验证码随机种子可以是数组,也可以是字符串
'characters' => '012346789abcdefghjmnpqrtuxyzABCDEFGHJMNPQRTUXYZ',
// 'characters' => ['2', '3', '4', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'j', 'm', 'n', 'p', 'q', 'r', 't', 'u', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'M', 'N', 'P', 'Q', 'R', 'T', 'U', 'X', 'Y', 'Z'],
'default' => [
'length' => 4,
'width' => 120,
'height' => 36,
'quality' => 90,
'math' => false,
],
'math' => [
'length' => 9,
'width' => 120,
'height' => 36,
'quality' => 90,
'math' => true,
], 'flat' => [
'length' => 6,
'width' => 160,
'height' => 46,
'quality' => 90,
'lines' => 6,
'bgImage' => false,
'bgColor' => '#ecf2f4',
'fontColors' => ['#2c3e50', '#c0392b', '#16a085', '#c0392b', '#8e44ad', '#303f9f', '#f57c00', '#795548'],
'contrast' => -5,
],
'mini' => [
'length' => 3,
'width' => 60,
'height' => 32,
],
'inverse' => [
'length' => 5,
'width' => 120,
'height' => 36,
'quality' => 90,
'sensitive' => true,
'angle' => 12,
'sharpen' => 10,
'blur' => 2,
'invert' => true,
'contrast' => -5,
]
];

页面嵌入

1. 前端展示

注册页面模板 register.blade.php

<div class="layui-form-item">
<label class="layui-icon layui-icon-vercode" for="captcha"></label>
<input type="text" name="captcha" placeholder="图形验证码" autocomplete="off" class="layui-input verification captcha" lay-verify="captcha" value="">
<div class="captcha-img">
<img id="captchaPic" src="{{ captcha_src('default') }}" onclick="changeCaptcha(this)">
</div>
</div>
<script src="jquery路径" charset="utf-8"></script>
<script src="jquery路径" charset="utf-8">
function changeCaptcha(obj) {
console.log('{{ captcha_src('default') }}' );
$(obj).attr('src','{{ captcha_src('default') }}'+Math.random());
}
</script>

2. 后端验证

在请求控制器创建方法

 public function login(Request $request){
$validator = Validator::make($request->all(), [
'captcha' => 'required|captcha'
],[
'captcha.required'=>'验证码必须填写',
'captcha.captcha'=>'验证码填写错误'
]);
if ($validator->fails()) {
$error = $validator->errors()->first();
return $error
}
}

Laravel - 验证码的更多相关文章

  1. Laravel - 验证码(captcha)

    首先,登录网址 packagist.org 查找 laravel captcha,找到mews/captcha ,根据 packagist 上的使用方法一步步来实现验证码的安装.配置composer. ...

  2. laravel 验证码 auth方式登录 中间件判断session是否存在

    首先下载laravel的插件 composer下载  实现验证码       composer require mews/captcha 在config/app.php进行配置 'providers' ...

  3. laravel验证码

    登录验证码 1.首先,进入https://github.com/mewebstudio/captcha,根据captcha上的使用方法一步步来实现验证码的安装,因为是laravel5.7,所以选择了c ...

  4. laravel 验证码手机与提交手机的验证?

    假如我用自己的手机号码获得了验证码,然后在点击提交之前,更换了手机号一栏的input,用一个比如18888888888的手机号进行注册,用之前得到的验证码,是不是会出现注册成功的情况?是否应该考虑验证 ...

  5. laravel 验证码使用示例

    一.去https://packagist.org/网站搜索验证码的代码依赖,关键词:captcha 地址:https://packagist.org/packages/mews/captcha 二.环 ...

  6. TODO:Laravel增加验证码

    TODO:Laravel增加验证码1. 先聊聊验证码是什么,有什么作用?验证码(CAPTCHA)是"Completely Automated Public Turing test to te ...

  7. laravel 生成验证码的方法

    在Laravel中有很多图片验证码的库可以使用,本篇介绍其中之一:gregwar/captcha,这个库比较简单,在Laravel中比较常用.下面我们就来介绍下使用细节: 首先, composer.j ...

  8. laravel中如何写验证码文件,并防止中文乱码.

    本例为生成中文验证码,专为laravel而生. //控制器: public function getVcode(Request $request){ $width=845; $height=125; ...

  9. laravel加入验证码类几种方法 && Laravel引入第三方库的方法

    1,使用require , inlcude 的方法将验证码类文件包含进来,再进行new 2,将验证码类文件放于Http目录下面,也就是和控制器controller放在一个目录下面,在验证码类文件中加上 ...

随机推荐

  1. vue 中 this.$options.data() 重置

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. this作为构造函数时注意点

    在 JS 中,为了实现类,我们需要定义一些构造函数,在调用一个构造函数的时候加上 new 这个关键字: function Person(name) { this.name = name; consol ...

  3. Codeforces Edu Round 65 A-E

    A. Telephone Number 跟之前有一道必胜策略是一样的,\(n - 10\)位之前的数存在\(8\)即可. #include <iostream> #include < ...

  4. jmeter跨线程使用token

    项目的接口测试,今早所有接口都不通了,查看原因是登录接口地址变了..... 原来的方式是每个线程中都写了登陆接口来获取token,但是因为登陆接口地址改变的原因,要改好多个登陆接口,所以就想把toke ...

  5. idea的下载与安装

    1.下载idea.到idea的官网选择你需要下载的,你最喜欢的版本https://www.jetbrains.com/idea/download/ 2.下载jdk.进入Oracle官网,鼠标指在Dow ...

  6. UWB硬件设计相关内容

    1.dw1000最小系统 2.器件选择建议: 射频前端  射频前端需要将差分信号转换成单端射频信号,一般使用HHM1595A1(俗称巴伦). 频率参考  晶振一般选择38.4MHZ的TCXO,但是要注 ...

  7. js上 八.语句

    1.什么是语句 概念:在JavaScript中表达式是短语,语句就是整句或命令. 作用:用来执行以使某件事发生 特征:用 ; 结尾 Js中语句的常见形式: ü 表达式语句 ü 复合语句 ü 声明语句 ...

  8. 职场PUA,管理者的五宗罪

    在目前的社会环境下,程序员似乎成了"弱势群体".我们经常谈论的职场PUA已经成为程序员的代名词. 我一直在想,为什么这么多管理者能力会这么差. 但最后最吃亏的还是可怜的程序员. 也 ...

  9. Excel 数据对比,窗口并列排序操作(xlw文件格式的由来)

    步骤1:打开Excel文件,输入一些数据 步骤2:点击视图,创建新窗口(这里就会创建一个和步骤1一抹一样的的表格,我们可以在任务栏上看到) 第三步:点击视图里面的全部重排按钮,在重拍窗口里面选择需要拍 ...

  10. [Python] iupdatable包:获取电脑主板信息(csproduct)

    一.说明 使用命令行就可以获取到主板相关的信息 wmic csproduct get /value 输出内容如下: Caption=Computer System Product Descriptio ...