orh/laravel-geetest-button 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

orh/laravel-geetest-button

Composer 安装命令:

composer require orh/laravel-geetest-button

包简介

Laravel geetest button v3.0.0, Laravel 极验证行为验证 v3.0.0

README 文档

README

此扩展包是针对 极验证 的行为验证 v3.0.0 开发,适用于 Laravel 5.5.* 版本。

索引

示例

示例图片

快速开始

1. 安装 laravel-geetest-button

composer require orh/laravel-geetest-button

2. 发布配置文件与前端资源文件

php artisan vendor:publish --provider="Ouronghuang\GeetestButton\ServiceProvider"

3. 请在 .env.env.example 文件添加以下配置

GEETEST_ID=
GEETEST_KEY=

注意:id 与 key 请在 极验后台 获取。

4. 在要需要验证的页面引入以下文件

<link href="{{ asset('vendor/geetest/css/gt.css') }}" rel="stylesheet"/>

<script src="{{ asset('vendor/geetest/js/gt.js') }}"></script>
<script src="{{ asset('vendor/geetest/js/geetest.js') }}"></script>  

注意:

  • 需要引入 jQuery
  • gt.js 必须在 geetest.js 之前引入。

5. 在相应的表单加入以下代码

<div class="form-group geetest-captcha">
    <label for="captcha">行为验证</label>
    <div id="embed-captcha"></div>
    <div class="wait">
        正在加载验证码
        <i class="fa fa-spin fa-spinner" aria-hidden="true"></i>
    </div>
    <div class="notice hide text-danger">
        <i class="fa fa-times-circle" aria-hidden="true"></i>
        请先完成验证
    </div>
    <input type="hidden" id="captcha" name="captcha">
</div>

注意:

也可以使用如下基本结构

<div class="geetest-captcha">
    <label for="captcha">行为验证</label>
    <div id="embed-captcha"></div>
    <div class="wait">正在加载验证码...</div>
    <div class="notice hide text-danger">请先完成验证</div>
    <input type="hidden" id="captcha" name="captcha">
</div>

注意:

  • 请保持如上结构;
  • 样式可以根据需要调整;
  • 加入 <input type="hidden" id="captcha" name="captcha"> 是便于二次验证。

6. 在服务端表单验证中加入以下规则

$this->validate($request, [
    ...
    'captcha' => 'captcha',
]);

至此,安装完成。

发布文件说明

1. 配置文件 config/geetest.php

配置 描述 数据类型 配置值
id 对应验证的 id string 请在 极验后台 获取
key 对应验证的 key string 请在 极验后台 获取
prefix 路由前缀 string 默认:'',如果与其它包冲突则可以修改此项
as 路由别名前缀 string 默认:'geetest',一般不需要改动
middleware 路由中间件 array 默认:['web'],一般不需要改动
captcha 表单验证规则名称 string 默认:'captcha',如果与其它包冲突则可以修改此项

说明:

  • 如果修改了 prefix 的值为 test,则需要修改 public/vendor/geetest/js/geetest.js
$.ajax({
    url: '/captcha?t=' + (new Date()).getTime()
});

$.ajax({
    url: '/test/captcha?t=' + (new Date()).getTime()
});
  • 如果修改了 captcha 的值为 test,则需要修改相应的表单验证规则
$this->validate($request, [
    ...
    'captcha' => 'captcha',
]);

$this->validate($request, [
    ...
    'captcha' => 'test',
]);

2. 前端资源文件

文件名 描述 文件位置
gt.css 验证码样式文件,可根据需要修改 public/vendor/geetest/css/gt.css
gt.js 验证码库文件,一般不需要修改 public/vendor/geetest/js/gt.js
geetest.js 验证码执行文件,可根据需要修改 public/vendor/geetest/js/geetest.js

依赖

  • Laravel 5.5.*
  • jQuery 1.9.1+

许可证

遵循 MIT 开源许可

orh/laravel-geetest-button 适用场景与选型建议

orh/laravel-geetest-button 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 14 次下载、GitHub Stars 达 0, 最近一次更新时间为 2018 年 04 月 17 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「laravel」 「geetest」 「极�」 「证」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 orh/laravel-geetest-button 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 orh/laravel-geetest-button 我们能提供哪些服务?
定制开发 / 二次开发

基于 orh/laravel-geetest-button 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 14
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 6
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2018-04-17