gee_test 0.1.1 → 0.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 871a3340a1980f7da7db2956e67f48e2f6fb1d9f
4
- data.tar.gz: 0c5c26cd3ac4ecaf0f90164ed6d1994331899c53
3
+ metadata.gz: 6cfa7102aaa10451954530cd32309e46c74a08b3
4
+ data.tar.gz: 24242959f2a57324893256140f5eeea35ed4f771
5
5
  SHA512:
6
- metadata.gz: ed116aa76cfadb36a80a8b14f181861b5472bdc15dfa507becac74a2dbcc0493a92fc0937926aab591c30c8e752d6efda22a153e644ceedf58d23a2e8eddb952
7
- data.tar.gz: 6123f921ecd764a7e968f3527b0f9b81e9c23c12307b08c2d844b374d09a6d6a7912e3d9352d2b3ddbb5f23c5baeb92c73a7dc4158a047aad1ef51e3d8280d44
6
+ metadata.gz: 2d84f96dfb4e6f8882e5c1b60a339fc830bdff84d324ebae2d6121e3b6bf7fe51d9cddcc4b473d8a23402ab3a0cc23785564a8078ee18e47a1bcc4c498e519bc
7
+ data.tar.gz: dea62742dd7e4cc3e3d70b5976d79d1e5fa34b9023ef8224906fa4a0215dace09084a52271c862af74593069aa42fc185134c1707caad279ad70046c68ed3f3f
data/.gitignore CHANGED
@@ -27,12 +27,12 @@ build/
27
27
 
28
28
  # for a library or gem, you might want to ignore these files since the code is
29
29
  # intended to run in multiple environments; otherwise, check them in:
30
- # Gemfile.lock
31
30
  # .ruby-version
32
31
  # .ruby-gemset
33
32
 
34
33
  # unless supporting rvm < 1.11.0 or doing something fancy, ignore this:
35
34
  .rvmrc
35
+ Gemfile.lock
36
36
 
37
37
  *.swo
38
38
  *.swp
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- gee_test (0.1.1)
4
+ gee_test (0.1.2)
5
5
  activesupport (> 4.0)
6
6
 
7
7
  GEM
data/README.md CHANGED
@@ -33,78 +33,43 @@ GeeTest.app_key = 'xx'
33
33
  在eruby中使用
34
34
 
35
35
  ```eruby
36
- <%== GeeTest.gee_test_tag(product: 'embed') %>
36
+ <%= GeeTest.gee_test_tag(product: 'embed') %>
37
+ ```
38
+
39
+ 在controller中验证
40
+ ```ruby
41
+ if GeeTest.validate({
42
+ geetest_challenge: params['geetest_challenge'],
43
+ geetest_validate: params['geetest_validate'],
44
+ geetest_seccode: params['geetest_seccode'],
45
+ })
46
+ 'successfully'
47
+ else
48
+ 'Can not validate'
49
+ end
37
50
  ```
38
51
 
39
52
  ## 如何使用demo
40
-
41
53
 
42
- ```
43
- git clone
54
+ ```sh
55
+ git clone
44
56
  cd gt_ruby_sdk/demo
45
- bundle
46
- ruby geetest.rb
57
+ bundle
58
+ ruby app.rb
47
59
  access localhost:4567 via your browser
48
60
  ```
49
61
 
50
- ## 如何在rails项目中使用geetest
62
+ ## 如何在rails项目中使用geetest
51
63
 
52
64
  将geetest_ruby_sdk.rb拷贝至lib目录
53
65
 
54
66
  ```html
55
67
  在view页面加上
56
- <script type="text/javascript" src="http://api.geetest.com/get.php?gt=id"></script>
68
+ <script type="text/javascript" src="http://api.geetest.com/get.php?gt=app_id"></script>
57
69
  ```
58
70
 
59
71
  其中id为geetest的公钥,这是要注册后才能得到的
60
72
 
61
-
62
-
63
- ```ruby
64
- # in your controller action
65
-
66
- require 'geetest_ruby_sdk'
67
-
68
- challenge = params[:geetest_challenge] || ''
69
- validate = params[:geetest_validate] || ''
70
- seccode = params[:geetest_seccode] || ''
71
-
72
- # 将私钥传入,要注册的
73
- sdk = GeetestSDK.new('private key')
74
- if sdk.validate(challenge, validate, seccode)
75
- do something
76
- else
77
- do something
78
- end #if
79
- ```
80
-
81
73
  ## 在sinatra项目中使用geetest
82
74
 
83
- 将geetest_ruby_sdk.rb拷贝至当前路径
84
-
85
- ```ruby
86
- # app.rb
87
-
88
- require 'sinatra'
89
- require './geetest_ruby_sdk'
90
-
91
- get '/' do
92
- send_file 'login.html'
93
- end
94
-
95
- post '/log' do
96
- challenge = params[:geetest_challenge] || ''
97
- validate = params[:geetest_validate] || ''
98
- seccode = params[:geetest_seccode] || ''
99
-
100
- # 将私钥传入,要注册的
101
- sdk = GeetestSDK.new('private key')
102
- if sdk.validate(challenge, validate, seccode)
103
- 'successfully'
104
- else
105
- 'Can not validate'
106
- end #if
107
- end
108
- ```
109
-
110
-
75
+ 参考[demo](demo)
data/demo/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "https://gems.ruby-china.org"
2
+
3
+ gem "sinatra"
4
+ gem "gee_test"
data/demo/Gemfile.lock ADDED
@@ -0,0 +1,35 @@
1
+ GEM
2
+ remote: https://gems.ruby-china.org/
3
+ specs:
4
+ activesupport (4.2.5.1)
5
+ i18n (~> 0.7)
6
+ json (~> 1.7, >= 1.7.7)
7
+ minitest (~> 5.1)
8
+ thread_safe (~> 0.3, >= 0.3.4)
9
+ tzinfo (~> 1.1)
10
+ gee_test (0.1.1)
11
+ activesupport (> 4.0)
12
+ i18n (0.7.0)
13
+ json (1.8.3)
14
+ minitest (5.9.0)
15
+ rack (1.6.4)
16
+ rack-protection (1.5.3)
17
+ rack
18
+ sinatra (1.4.7)
19
+ rack (~> 1.5)
20
+ rack-protection (~> 1.4)
21
+ tilt (>= 1.3, < 3)
22
+ thread_safe (0.3.5)
23
+ tilt (2.0.5)
24
+ tzinfo (1.2.2)
25
+ thread_safe (~> 0.1)
26
+
27
+ PLATFORMS
28
+ ruby
29
+
30
+ DEPENDENCIES
31
+ gee_test
32
+ sinatra
33
+
34
+ BUNDLED WITH
35
+ 1.12.4
data/demo/app.rb ADDED
@@ -0,0 +1,21 @@
1
+ require 'sinatra'
2
+ require 'gee_test'
3
+
4
+ GeeTest.app_id = 'd12db4f4558502e74222f98b61935884'
5
+ GeeTest.app_key = ''
6
+
7
+ get '/' do
8
+ send_file 'login.html'
9
+ end
10
+
11
+ post '/log' do
12
+ if GeeTest.validate({
13
+ geetest_challenge: params['geetest_challenge'],
14
+ geetest_validate: params['geetest_validate'],
15
+ geetest_seccode: params['geetest_seccode'],
16
+ })
17
+ 'successfully'
18
+ else
19
+ 'Can not validate'
20
+ end
21
+ end
data/demo/login.html CHANGED
@@ -2,7 +2,7 @@
2
2
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
3
3
  <head>
4
4
  <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
5
- <title>极验行为式验证 php 类网站安装测试页面</title>
5
+ <title>极验行为式验证 ruby 网站安装测试页面</title>
6
6
  <style>
7
7
  body {
8
8
  background-color: #9e9;
@@ -20,7 +20,7 @@
20
20
  </head>
21
21
  <body>
22
22
  <div class="wrap">
23
- <h1>极验行为式验证 php 类网站安装测试页面</h1>
23
+ <h1>极验行为式验证 ruby 网站安装测试页面</h1>
24
24
  <form method="post" action="/log">
25
25
  <div class="row">
26
26
  <label for="name">邮箱</label>
@@ -31,7 +31,7 @@
31
31
  <input type="password" id="passwd" name="passwd" value="gggggggg"/>
32
32
  </div>
33
33
  <div class="row">
34
- <script type="text/javascript" src="http://api.geetest.com/get.php?gt=a40fd3b0d712165c5d13e6f747e948d4"></script>
34
+ <script type="text/javascript" src="http://api.geetest.com/get.php?gt=d12db4f4558502e74222f98b61935884"></script>
35
35
  </div>
36
36
  <div class="row">
37
37
  <input type="submit" value="登陆" />
@@ -40,4 +40,3 @@
40
40
  </div>
41
41
  </body>
42
42
  </html>
43
-
@@ -1,3 +1,3 @@
1
1
  module GeeTest
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
data/lib/gee_test.rb CHANGED
@@ -31,8 +31,8 @@ module GeeTest
31
31
  end
32
32
 
33
33
  def gee_test_tag config={}
34
- config = {gt: app_id}.merge config
35
- "<script type='text/javascript' src='http://api.geetest.com/get.php?#{config.to_query}'></script>"
34
+ config.merge! gt: app_id
35
+ "<script type='text/javascript' src='http://api.geetest.com/get.php?#{config.to_query}'></script>".html_safe
36
36
  end
37
37
  end
38
38
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gee_test
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - xiajian
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2016-06-15 00:00:00.000000000 Z
11
+ date: 2016-07-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -68,8 +68,9 @@ files:
68
68
  - Rakefile
69
69
  - bin/console
70
70
  - bin/setup
71
- - demo/geetest.rb
72
- - demo/geetest_ruby_sdk.rb
71
+ - demo/Gemfile
72
+ - demo/Gemfile.lock
73
+ - demo/app.rb
73
74
  - demo/login.html
74
75
  - gee_test.gemspec
75
76
  - lib/gee_test.rb
@@ -95,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
95
96
  version: '0'
96
97
  requirements: []
97
98
  rubyforge_project:
98
- rubygems_version: 2.4.8
99
+ rubygems_version: 2.6.6
99
100
  signing_key:
100
101
  specification_version: 4
101
102
  summary: GeeTest is Ruby SDK for geetest。
data/demo/geetest.rb DELETED
@@ -1,19 +0,0 @@
1
- require 'sinatra'
2
- require './geetest_ruby_sdk'
3
-
4
- get '/' do
5
- send_file 'login.html'
6
- end
7
-
8
- post '/log' do
9
- challenge = params[:geetest_challenge] || ''
10
- validate = params[:geetest_validate] || ''
11
- seccode = params[:geetest_seccode] || ''
12
-
13
- sdk = GeetestSDK.new('0f1a37e33c9ed10dd2e133fe2ae9c459')
14
- if sdk.validate(challenge, validate, seccode)
15
- 'successfully'
16
- else
17
- 'Can not validate'
18
- end #if
19
- end
@@ -1,32 +0,0 @@
1
- require 'digest'
2
- require 'net/http'
3
-
4
- class GeetestSDK
5
- def initialize(key, new_uri=nil)
6
- @gee_uri = new_uri || 'http://api.geetest.com/validate.php'
7
- @key = key
8
- end
9
-
10
- def validate(challenge='', validate='', seccode='')
11
- md5 = Digest::MD5.hexdigest(@key + 'geetest' + challenge)
12
- if validate == md5
13
- back = post(@gee_uri, seccode: seccode) rescue ''
14
- if back == Digest::MD5.hexdigest(seccode)
15
- return true
16
- else
17
- return false
18
- end #if
19
- else
20
- return false
21
- end #if
22
- end #geetest_validate
23
-
24
- # data.is_a?(Hash)==true
25
- def post(uri, data)
26
- uri = URI(uri)
27
- res = Net::HTTP.post_form(uri, data)
28
- res.body
29
- end
30
-
31
- end
32
-