jwt_auth_token 1.0.5 → 1.0.6

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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/jwt_auth_token.rb +25 -3
  3. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 41b981a2454aedf19ba5e464fc265fd0400a5da1
4
- data.tar.gz: 881d352293ea114c8740c65ea8ca5c4a25b26632
3
+ metadata.gz: 40ffb7501e5b453384923aeb2a385e934bd951d5
4
+ data.tar.gz: 974e72cab347acb4e316ad6268b51b0f9d450665
5
5
  SHA512:
6
- metadata.gz: 418d1104f050acca7b4601be92ef8cb71b4db94c9df891961a845c417ce22e1fc920c9e424f874e731b0981e0bbe2fb564b737d154e559e619f973762f752ed9
7
- data.tar.gz: 445080cbedece1eced1b232e099e45c49f71d04cb9220ddc2edda8f26c360b0334dc5880ab520a3b61ca6c04ece5cbc83b7aed95248e1355b27fe1257d0530fb
6
+ metadata.gz: da376b71cb2c97db96de084e7aebc2e3e5b4a5d897bcf8d5e8ee03e7495985c400dc46386a2848c46d4012126db85e6258b9965741325608d8d397209515a6cb
7
+ data.tar.gz: 371c54fc5e02082e96292b846b59611abd67b32115137a39dded87aca1019b83e414d029b5938ea676e88139def5383ce03f1549520814eec212a156105b865a
@@ -30,10 +30,13 @@ def current_user
30
30
  @_current_user ||= OpenStruct.new(@decoded_token) if is_valid_token?
31
31
  end
32
32
 
33
+ def header_token
34
+ @_header_token ||= request.headers[header_name] rescue nil
35
+ end
36
+
33
37
  def is_valid_token?
34
38
  begin
35
- token = request.headers[header_name]
36
- @decoded_token = JSON.parse(JWT.decode(token, jwt_hmac_secret, true, { :algorithm => jwt_algorithm })[0])
39
+ @decoded_token = JSON.parse(JWT.decode(header_token, jwt_hmac_secret, true, { :algorithm => jwt_algorithm })[0])
37
40
  return validate_keys
38
41
  rescue Exception => e
39
42
  return false
@@ -42,4 +45,23 @@ end
42
45
 
43
46
  def validate_keys
44
47
  !!@_validate_keys ||= (@decoded_token.keys && ["id", "email"]).any?
45
- end
48
+ end
49
+
50
+ ROUTES = {}
51
+ def restClientUrl(url, payload = {})
52
+ @_get_routers ||= get_routers
53
+ _req = OpenStruct.new(ROUTES[url])
54
+ data = RestClient::Request.execute(method: _req.verb, url: _req.url, payload: payload, headers: { "#{header_name}" => header_token})
55
+ {code: data.code, data: JSON.parse(data.body), headers: data.headers, cookies: data.cookies}
56
+ end
57
+
58
+ def get_routers
59
+ Rails.application.routes.routes.map do |route|
60
+ path = route.path.spec.to_s.gsub(/\(\.:format\)/, "").gsub(/:[a-zA-Z_]+/, "1")
61
+ next if path.include?("rails")
62
+ port = ":#{route.defaults[:port]}" if route.defaults[:port]
63
+ complete_url = "#{route.defaults[:host]}#{port}#{path}"
64
+ verb = %W{ GET POST PUT PATCH DELETE }.grep(route.verb).first.downcase.to_sym rescue nil
65
+ ROUTES["#{route.name}_url"] = { path: path, verb: verb, url: complete_url}
66
+ end
67
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jwt_auth_token
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.5
4
+ version: 1.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Afzal Lakdawala
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - ">="
39
39
  - !ruby/object:Gem::Version
40
40
  version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rest-client
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  description: ''
42
56
  email: afzalmlakdawala@gmail.com
43
57
  executables: []
@@ -65,7 +79,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
65
79
  version: '0'
66
80
  requirements: []
67
81
  rubyforge_project:
68
- rubygems_version: 2.4.3
82
+ rubygems_version: 2.6.12
69
83
  signing_key:
70
84
  specification_version: 4
71
85
  summary: Json web token, setting data to header