极验Geetest
案例教程:http://uioi.cn/archives/51
Github地址:https://github.com/Huelse/geetest
安装
composer require huelse/geetest参数配置//路径 config/config.php
'geetest'=> [
'captcha_id' =>'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
'private_key'=>'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx',
],前端代码<div id="captcha" style="height: 42px;">
<div id="text">
行为验证™ 安全组件加载中
</div>
<div id="wait" class="show">
</div>
</div>
<script src="https://apps.bdimg.com/libs/jquery/1.9.1/jquery.js"></script>
<script src="https://www.geetest.com/demo/libs/gt.js"></script>
<script>
$.ajax({
url: "{:geetest_url()}?t=" + (new Date()).getTime(), // 加随机数防止缓存 // 引号内可替换为"geetest.html?t="
type: "get",
dataType: "json",
success: function (data) {
// console.log(data);
$('#text').hide();
$('#wait').show();
initGeetest({
gt: data.gt,
challenge: data.challenge,
new_captcha: data.new_captcha,
product: "float", // 产品形式,包括:float,embed,popup。注意只对PC版验证码有效
offline: !data.success, // 表示用户后台检测极验服务器是否宕机,一般不需要关注
}, handler);
}
});</script>控制器里验证$data = Request::param(false); //传入请求数据,使用false参数以获取原始数据
if(!is_null($data) && !geetest_check($data)){
//验证失败
return json()->data(false)->code(403); // 自定义
} 