class NewGoogleRecaptcha::Validator
Attributes
action[R]
minimum_score[R]
score[R]
token[R]
Public Class Methods
new(token:, action:, minimum_score:)
click to toggle source
# File lib/new_google_recaptcha/validator.rb, line 8 def initialize(token:, action:, minimum_score:) @token = token @action = action @minimum_score = minimum_score end
Public Instance Methods
call()
click to toggle source
# File lib/new_google_recaptcha/validator.rb, line 14 def call uri = NewGoogleRecaptcha.compose_uri(token) http = Net::HTTP.new(uri.host, uri.port) http.use_ssl = true if uri.scheme == 'https' result = JSON.parse(http.request(Net::HTTP::Get.new(uri)).body) @score = result['score'].to_f conditions = [] conditions << !!result['success'] conditions << (result['score'].to_f >= minimum_score) conditions << (result['action'].to_s == action.to_s) conditions.none?(&:!) end