lumen-utils/captcha

Lumen 验证码

v10.0.1 2023-11-28 18:25 UTC

This package is auto-updated.

Last update: 2024-08-28 20:02:32 UTC


README

基于 Captcha for Laravel 5 修改而来的

一个简单的 Laravel 5 服务提供者,用于包含 Captcha for Laravel 5

更新

支持了lumen 10x

来源

Captcha for Laravel 5 的作者已经很久没有更新了,同时 Captcha 在 Lumen 中存在很多错误

因此,我基于原 Captcha 包进行了一些错误修复以集成到 Lumen 中。同时删除了一些个人认为过于冗余的部分,使使用更加方便和自由

安装

composer require lumen-utils/captcha

使用

新版本的包已经删除了对 session 的支持,完全交给业务自由选择存储方式

个人认为这样更方便解耦业务,尤其是 Lumen 大多时候用来做 Api 开发,并不需要开启 Session 服务

bootstrap\app.php 中注册服务

$app->register(LumenUtils\Captcha\CaptchaServiceProvider::class);


// 添加别名
$app->alias('captcha', 'LumenUtils\Captcha\CaptchaServiceProvider');

配置文件

config/captcha.php 复制至项目的 config 文件夹下

例如

验证码生成

//  创建验证码
//  配置文件 key($config)
//  返回 验证码 captcha 和相关 key
$data = app('captcha')->create();
    
//  自定义储存 key (如 redis ,session 等)

....

//  返回验证码图片 img

验证码校验

// 通过 code 和 key 来校验
$captcha = $request->input('captcha');

// 获取自定义存储的 key 值
$key = { ... };
	
if(app('captcha')->check($captcha, $key) === false) {
	   //校验失败
}