jwt_auth_token 1.1.1 → 1.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 +4 -4
- data/lib/router_helper.rb +7 -60
- metadata +1 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b7a963b2d000e7eebba5d20368aa754afcb8fa5c
|
4
|
+
data.tar.gz: 5958f87dcd6547580819f7c5a78bd9cb618495c7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 80465b797fb38e02bece8b9874a4de2b2aec39341496be919f9e638ecad34514c9708a1d7ce288ebf0538bec890e7a6398be6d17f5559c5c7b902760b6eb6c8b
|
7
|
+
data.tar.gz: 7f7860caae67e1d16d8ea562f580b0f5c193c545de69f80ae01e49ac46b5fcfefc935a4c54285fe93477367a4285d36dd75ee505a9c2fc8e09bfed89e40ac92b
|
data/lib/router_helper.rb
CHANGED
@@ -1,70 +1,24 @@
|
|
1
|
-
ROUTES = {}
|
2
1
|
module RouterHelper
|
3
2
|
|
4
|
-
def
|
5
|
-
|
6
|
-
_req = OpenStruct.new(ROUTES[url])
|
7
|
-
payload = (JSON.parse(payload.to_json)).with_indifferent_access
|
3
|
+
def rest_client_url(url, _payload = {})
|
4
|
+
payload = _payload[:params] || {}
|
8
5
|
payload[:referer_service] = current_micro_service_name
|
6
|
+
headers = {"#{jwt_header_name}" => jwt_header_token}
|
7
|
+
headers = headers.merge(_payload[:headers]) if _payload[:headers]
|
8
|
+
verb = _payload[:method]
|
9
9
|
begin
|
10
|
-
data = RestClient::Request.execute(method:
|
10
|
+
data = RestClient::Request.execute(method: verb, url: url, payload: payload, headers: headers)
|
11
11
|
data = {code: data.code, data: JSON.parse(data.body), headers: data.headers, cookies: data.cookies}
|
12
12
|
rescue RestClient::Unauthorized, RestClient::Forbidden => err
|
13
13
|
data = JSON.parse(err.response)
|
14
14
|
rescue RestClient::ResourceNotFound => err
|
15
15
|
data = {code: 404, error: "Url not found #{_req.url}" }
|
16
16
|
rescue RestClient::InternalServerError => err
|
17
|
-
data = {code: 500, error: "Url not found #{_req.url}" }
|
18
|
-
rescue RestClient::UnprocessableEntity => err
|
19
|
-
data = {code: 422, errors: JSON.parse(err.response)}
|
17
|
+
data = {code: 500, error: "Url not found #{_req.url}" }
|
20
18
|
end
|
21
19
|
data
|
22
20
|
end
|
23
21
|
|
24
|
-
def get_routers
|
25
|
-
@_get_routers ||= set_routers
|
26
|
-
end
|
27
|
-
|
28
|
-
def set_routers
|
29
|
-
Rails.application.routes.routes.map do |route|
|
30
|
-
path = route.path.spec.to_s.gsub(/\(\.:format\)/, "").gsub(/:[a-zA-Z_]+/, "1")
|
31
|
-
next if path.include?("rails")
|
32
|
-
port = ":#{route.defaults[:port]}" if route.defaults[:port]
|
33
|
-
complete_url = "#{route.defaults[:host]}#{port}#{path}"
|
34
|
-
verb = %W{ GET POST PUT PATCH DELETE }.grep(route.verb).first.downcase.to_sym rescue nil
|
35
|
-
route_name = route.defaults[:controller].gsub("/", "_") rescue route.name
|
36
|
-
alias_should_be = route.defaults[:alias_should_be]
|
37
|
-
final_key = "#{alias_should_be}_#{route_name}_#{verb}_url"
|
38
|
-
ROUTES[final_key] = { path: path, verb: verb, url: complete_url}.merge(route.defaults)
|
39
|
-
end
|
40
|
-
ROUTES.delete(ROUTES.first.first)
|
41
|
-
end
|
42
|
-
|
43
|
-
def export_urls_csv
|
44
|
-
get_routers
|
45
|
-
CSV.open("tmp/route_list_#{Rails.env}.csv", 'w') do |csv|
|
46
|
-
csv << [ROUTES.first[1].keys.map(&:to_s).unshift("alias") << ["development_url", "production_url"]].flatten
|
47
|
-
ROUTES.each do |key, values|
|
48
|
-
next if key.include?("rails") || key.include?("__url")
|
49
|
-
dev_url = "#{current_service_host_service_url}:#{current_service_host_service_port}#{values.values[2]}"
|
50
|
-
prod_url = "#{prod_domain}#{values.values[2]}"
|
51
|
-
csv << values.values.map(&:to_s).unshift(key) + [dev_url] + [prod_url]
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
def prod_domain
|
57
|
-
"#{current_micro_service_name.split('_')[0]}.embibe.com"
|
58
|
-
end
|
59
|
-
|
60
|
-
def current_service_host_service_url
|
61
|
-
eval("#{current_micro_service_name.split('_')[0]}_host_service_url")
|
62
|
-
end
|
63
|
-
|
64
|
-
def current_service_host_service_port
|
65
|
-
eval("#{current_micro_service_name.split('_')[0]}_host_service_port")
|
66
|
-
end
|
67
|
-
|
68
22
|
def services_development_urls
|
69
23
|
@_services_development_urls ||= {user: {url: "http://localhost", port: 3000},
|
70
24
|
practice: {url: "http://localhost", port: 3001},
|
@@ -93,11 +47,4 @@ module RouterHelper
|
|
93
47
|
urls.map {|key,values| values.map {|k,v| define_method("#{key}_host_service_#{k}") { v }}}
|
94
48
|
end
|
95
49
|
|
96
|
-
def url_method_generation
|
97
|
-
get_routers
|
98
|
-
ROUTES.each do |_alias, values|
|
99
|
-
define_method(_alias) { |params| restClientUrl(_alias, params) }
|
100
|
-
end
|
101
|
-
end
|
102
|
-
|
103
50
|
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.1.
|
4
|
+
version: 1.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Afzal Lakdawala
|
@@ -115,4 +115,3 @@ signing_key:
|
|
115
115
|
specification_version: 4
|
116
116
|
summary: Json web token, setting data to header
|
117
117
|
test_files: []
|
118
|
-
has_rdoc:
|