laravel 极验(Geetest) 让验证更安全。


   整理的有些仓促,在9月15号之后会更新更加详细更加全面的文档,供给大家参考,学习!


1、简述

在网站开发中使用频率最高的工具之一便是验证码,验证码在此也是多种多样,不过简单的图片验证码已经可以被机器识别,极验验证码提供了一个安全可靠的滑动验证码体系,让网站开发更加安全。

接入极验验证码的过程并没有想象中的那么简单,如果想在Laravel5中使用,可以使用Laravel5 的极验验证码包,Geetest,支持Laravel5.0及以上版本。


地址:https://github.com/Germey/LaravelGeetest

下面介绍一下该工具包的使用。

2、注册极验账号

首先需要到 极验 网站注册账号,然后新建一个应用,获取到 ID 和 KEY,留作备用。

3、安装

在项目地址输入命令

$ composer require germey/geetest

就可以完成该包的安装

或者可以在 composer.json 的 require 中添加

"germey/geetest": "~1.0"

然后执行

composer update
同样可以完成该包的安装

4、配置

注册 ServiceProvider,在 config/app.php 的 providers 中添加

Germey\Geetest\GeetestServiceProvider::class

在 aliases 中添加

'Geetest' => Germey\Geetest\Geetest::class,
然后执行

php artisan vendor:publish
会生成一个配置文件,config/geetest.php 和视图文件views/vendor/geetest

5、使用

首先把刚才拿到的 ID 和 KEY 配置到 .env 文件中,因为这两个算私密内容,配置到 .env 文件中可以保证安全性。在 .env 中写入如下两行

GEETEST_ID=0f1097bef7xxxxxx9afdeced970c63e4
GEETEST_KEY=c070f0628xxxxxxe68e138b55c56fb3b

其中 ID 和 KEY 换成你自己的。

然后需要配置一个极验的后台地址,用于生成一串密钥,通过Ajax方法获取密钥来呈现验证码。

默认的地址是 /auth/geetest,这样只需要在对应的 AuthController 中添加使用一个 Trait 即可。

use Germey\Geetest\CaptchaGeetest;
class AuthController extends Controller {
    use CaptchaGeetest;
}

最后,在任意的视图里,我们只需要调用

{!! Geetest::render() !!}

就可以得到验证码了。

之后如果有那里不理解或者觉得我这边文章写的不够好的话 请在下面评论或者私信给我  大家多交流,共同学习!


参考地址:

http://laravelacademy.org/post/5291.html


posted on 2016-09-08 21:12  如果蜗牛有爱情  阅读(708)  评论(0编辑  收藏  举报

导航