在Rails里使用ReCaptcha添加验证码

1,去 http://recaptcha.net/sign up,获得pub key和priv key
2,安装recaptcha gem
gem install --source http://www.loonsoft.com/recaptcha/pkg/ recaptcha

3,在environment.rb里设置key
require 'recaptcha'
RCC_PUB = 'pub key'
RCC_PRIV = 'priv key'

4,修改application.rb
class ApplicationController < ActionController::Base
  include ReCaptcha::AppHelper

5,修改application_helper.rb
module ApplicationHelper
  include ReCaptcha::ViewHelper

6,在页面上显示ReCaptcha验证码
<%= get_captcha %>

7,在Controller里验证验证码
if validate_recap(params, @comment.errors) && @comment.save
  flash[:notice] = 'Comment was successfully created.'
  format.html { redirect_to post_path(@comment.post.url_slug) }
  format.xml  { render :xml => @comment, :status => :created, :location => @comment }

看了下recaptcha源码,对于本地访问时validate_recap始终为true,对于错误的域名也始终为true

最终的样子:

你可能感兴趣的:(.net,xml,Flash,UP,Rails)