ruby on rails 生成验证码 easy_captcha

运行环境,Mac 、ubuntu

                  rails 4.2.1

    大部分的网站的都会考虑自身的安全,验证码检测成为了必不可少的流程,相对于node,ruby 对验证码的实现要简单方便很多。

1.引入gem包

gem 'easy_captcha', github: 'phatworx/easy_captcha'
gem 'rmagick'

  我试过直接使用,gem 'easy_captcha' 但是版本不对,可以自己试试 

2.安装包

bundle install

    期间可以出问题, rmagick 的依赖包没有,解决办法

sudo apt-get install libmagick++-de 
sudo apt-get install imagemagick

3. 安装配置

rails g easy_captcha:install

   

   运行完这句话,可以看到app/controllers/application_controller.rb 和 config/routes.rb 的变化

   application_controller里

after_filter :reset_last_captcha_code! //可以先不用理会,用到的时候再写

   

   可以添加执行后,自动更新验证码的方法

   routes.rb中自动添加后了,请求验证码对应的路径无需改动

4.view

= captcha_tag

   在页面中需要的位置添加自动生成验证码图片

5.后台验证输入是否一致

  

 captcha_valid? params[:captcha]

    返回布尔值,ture or false

6.点击图片验证码刷新

$("img[alt='captcha']").bind('click',function(){
        this.src = this.src + '?'
 })

猜你喜欢

转载自liguangsong.iteye.com/blog/2217946