module GeeTest

Constants

VERSION

Public Class Methods

gee_test_tag(config = {}) click to toggle source
# File lib/gee_test.rb, line 33
def gee_test_tag(config = {})
  config.merge! gt: app_id
  
  "<script type='text/javascript' src='//api.geetest.com/get.php?#{config.to_query}'></script>".html_safe
end
post(uri, data) click to toggle source
# File lib/gee_test.rb, line 27
def post(uri, data)
  uri = URI(uri)
  res = Net::HTTP.post_form(uri, data)
  res.body
end
validate(params = {}) click to toggle source
# File lib/gee_test.rb, line 12
def validate(params = {})
  challenge = params[:geetest_challenge] || ''
  validate = params[:geetest_validate] || ''
  seccode = params[:geetest_seccode] || ''

  md5 = Digest::MD5.hexdigest(app_key + 'geetest' + challenge)

  if validate == md5
    response = post(validate_url, seccode: seccode)
    response == Digest::MD5.hexdigest(seccode)
  end
rescue => e
  puts "Exception is happened, It is #{e}"
end