代码拉取完成,页面将自动刷新
另有 Dcat-Admin版
受限制于有些验证码密钥是收费版,目前代码不能做到完全兼容 如果有好心人士提供密码 我将严格保密 仅用于开发工作
composer require asundust/auth-captcha
'auth-captcha' => [
'enable' => true,
'provider' => 'dingxiang',
'style' => 'popup', // 弹出式: popup 嵌入式: embed 内联式: inline 触发式: oneclick (不填写默认popup)
'appid' => '{AppID}',
'secret' => '{AppSecret}',
'ext_config' => [],
],
php artisan vendor:publish --provider="Asundust\AuthCaptcha\AuthCaptchaServiceProvider"
'auth-captcha' => [
'enable' => true,
'provider' => 'geetest',
'style' => 'bind', // 隐藏式: bind 弹出式: popup 浮动式: float 自定区域浮动式(与popup类似,由于登录页面无需自定区域,故效果和popup一样的): custom (不填写默认bind)
'appid' => '{ID}',
'secret' => '{KEY}',
'ext_config' => [],
],
'auth-captcha' => [
'enable' => true,
'provider' => 'hcaptcha',
'style' => 'invisible', // 隐藏式: invisible 复选框: display (不填写默认invisible)
'appid' => '{sitekey}',
'secret' => '{secret}',
],
'auth-captcha' => [
'enable' => true,
'provider' => 'recaptchav2',
'style' => 'invisible', // 隐藏式: invisible 复选框: display (不填写默认invisible)
'appid' => '{site_key}',
'secret' => '{secret}',
// 'domain' => 'https://www.google.com', // 服务域名,可选,无此选项默认为 https://recaptcha.net
],
'auth-captcha' => [
'enable' => true,
'provider' => 'recaptcha',
'appid' => '{site_key}',
'secret' => '{secret}',
// 'domain' => 'https://www.google.com', // 服务域名,可选,无此选项默认为 https://recaptcha.net
// 'score' => '0.5', // 可信任分数,可选,无此选项默认为 0.7
],
'auth-captcha' => [
'enable' => true,
'provider' => 'tencent',
'appid' => '{AppID}',
'secret' => '{AppSecretKey}',
],
'auth-captcha' => [
'enable' => true,
'provider' => 'verify5',
'appid' => '{APP ID}',
'secret' => '{APP Key}',
'host' => '{Host}',
],
'auth-captcha' => [
'enable' => true,
'provider' => 'vaptcha',
'style' => 'invisible', // 隐藏式: invisible 点击式: click 嵌入式: embed (不填写默认invisible)
'appid' => '{VID}',
'secret' => '{Key}',
'ext_config' => [],
],
'auth-captcha' => [
'enable' => true,
'provider' => 'wangyi',
'style' => '', // 注意后台申请的类型!!! 常规弹出式: popup 常规嵌入式: embed 常规触发式: float 无感绑定按钮:bind 无感点击式: ''(留空,奇葩设定) (不填写默认popup)
'appid' => '{captchaId}',
'secret' => '{secretId}',
'secret_key' => '{secretKey}', // 这里多了一个额外参数,请注意!!!
'ext_config' => [],
],
'auth-captcha' => [
'enable' => true,
'provider' => 'yunpian',
'style' => '', // flat: 直接嵌入 float: 浮动 dialog: 对话框 external: 外置滑动(拖动滑块时才浮现验证图片,仅适用于滑动拼图验证) (不填写默认dialog) PS:flat和external貌似存在回调bug,不推荐使用
'appid' => '{APPID}',
'secret' => '{Secret Id}',
'secret_key' => '{Secret Key}', // 这里多了一个额外参数,请注意!!!
'ext_config' => [],
],
config/admin.php
文件里加入上述配置好的文件。'extensions' => [
'auth-captcha' => [
// ...
],
]
'enable' => env('AUTH_CAPTCHA_ENABLE'),
'appid' => env('AUTH_CAPTCHA_APPID'),
'secret' => env('AUTH_CAPTCHA_SECRET'),
// 'secret_key' => env('AUTH_CAPTCHA_SECRET_KEY'), // 部分需要此第三个参数!!!
// 'host' => env('AUTH_CAPTCHA_HOST'), // 部分需要此第三个参数!!!
// 'domain' => env('AUTH_CAPTCHA_DOMAIN'), // 部分需要此第三个参数!!!
// 'score' => env('AUTH_CAPTCHA_SCORE'), // 部分需要此第三个参数!!!
// 'timeout' => env('AUTH_CAPTCHA_TIMEOUT'), // 如果部分出现超时500可以修改此参数,默认5
// 'login_try_throttle' => env('AUTH_CAPTCHA_LOGIN_TRY_THROTTLE'), // 登录频率限制,默认空,参数规则参考Laravel自带的
// 'xxxxxx' => env('AUTH_CAPTCHA_XXXXXX'), // demo
.env
文件下加入AUTH_CAPTCHA_ENABLE=true
AUTH_CAPTCHA_APPID=xxxxxx
AUTH_CAPTCHA_SECRET=xxxxxx
#AUTH_CAPTCHA_SECRET_KEY=xxxxxx
#AUTH_CAPTCHA_HOST=xxxxxx
#AUTH_CAPTCHA_DOMAIN=xxxxxx
#AUTH_CAPTCHA_SCORE=xxxxxx
#AUTH_CAPTCHA_TIMEOUT=xxxxxx
#AUTH_CAPTCHA_LOGIN_TRY_THROTTLE=xxxxxx
#AUTH_CAPTCHA_XXXXXX=xxxxxx
resources/lang/zh-CN(example).json
文件里加入如下配置。"Sliding validation failed. Please try again.": "滑动验证未通过,请重试。",
"Please complete the validation.": "请完成验证。",
"Config Error.": "配置错误。"
"Too Many Attempts.": "尝试次数太多。"
'ext_config' => [
'customLanguage' => [
'init_inform' => '拖动一下',
'slide_inform' => '向右向右',
],
],
在浏览器里打开Laravel-Admin登录页
auth-captcha
增加一个controller
配置项,并填写App\Admin\Controllers\AuthController::class
,代码如下'extensions' => [
'auth-captcha' => [
// ...
'controller' => App\Admin\Controllers\AuthController::class
],
]
App\Admin\Controllers
下新建AuthController
控制器,代码如下<?php
namespace App\Admin\Controllers;
use Asundust\AuthCaptcha\Http\Controllers\AuthCaptchaController;
class AuthController extends AuthCaptchaController
{
public function getLogin()
{
// 原先代码在 \Asundust\AuthCaptcha\Http\Controllers\AuthCaptchaController::getLogin
// 这里重写自己的逻辑
}
public function postLogin()
{
// 原先代码在 \Asundust\AuthCaptcha\Http\Controllers\AuthCaptchaController::postLogin
// 这里重写自己的逻辑
}
// 重写其他方法 具体查看 Encore\Admin\Controllers\AuthController
}
auth-captcha
增加一个controller
配置项,并填写Asundust\AuthCaptcha\Http\Controllers\AuthCaptchaController::class
,代码如下'extensions' => [
'auth-captcha' => [
// ...
'controller' => Asundust\AuthCaptcha\Http\Controllers\AuthCaptchaController::class
],
]
如果觉得这个项目帮你节约了时间,不妨支持一下呗!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
1. 开源生态
2. 协作、人、软件
3. 评估模型