token_auth_box 0.0.11 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cf1731de1bd337a7f9c759ffc887a12c615ed853c13df10fd2cb66a6a1c40a9f
4
- data.tar.gz: a1e05bb6d77bfc1513d123bf731398c07260f54b99ab175d389d722d1d2c28fe
3
+ metadata.gz: 155e3e8dfcd605c7ee5005f7c13983c450b1b8f3215ce5a7b701a61d1bbc9ed8
4
+ data.tar.gz: a1e59bf65e2db30ae79ade0be348f1b040a4f72750889e6750e717e3e427e9da
5
5
  SHA512:
6
- metadata.gz: 9af838992754a0cbc24a00fe82b8ddaff999339698bad943b6b70a4f747d0d7158b46230834bc0adf59719816b80d4ee7921141cf747a91158f684dc4aa47557
7
- data.tar.gz: eb7e6a67dbb7a673292a47faeae045574d817a664c092b62caca0cb5856e351f625c1eab5b737d5c7f1b53bdabde220550f7963bac39622573e209c6f8ef9a2a
6
+ metadata.gz: 7f68025676fcc0f97aba448e56b2a5a35ccbfd914ed00ddd3031c61ba1c8ca09282a35302b6230915ee8b9ba0d66fb2b68464e12d1cf17a4209faf98ec900e02
7
+ data.tar.gz: f1349446ee238b37046db0924aa39d5e250a83175ac2f68304962b3cec8c019e6ad438251e82f9fc55e46ebecdf7263a4b1d4cc180c440c41f90e4db6197f24f
@@ -1,14 +1,11 @@
1
+ require_dependency "colorize"
1
2
  require_dependency "token_auth_box/application_controller"
2
3
 
3
4
  module TokenAuthBox
5
+ debugger
4
6
  class AuthController < ApplicationController
5
7
  include TokenAuthBox::Middleware
6
8
 
7
- before_action :ensure_signed_in, only: [:middle]
8
- def middle
9
- render json: :ok
10
- end
11
-
12
9
  def register
13
10
  user = User.new(user_params)
14
11
  if user.save
@@ -17,7 +14,8 @@ module TokenAuthBox
17
14
 
18
15
  render json: { user: data, token: token }
19
16
  else
20
- render json: user.errors.messages
17
+ print_error user.errors.messages
18
+ render json: user.errors.messages, status: :bad_request
21
19
  end
22
20
  end
23
21
 
@@ -27,6 +25,7 @@ module TokenAuthBox
27
25
  .try(:authenticate, data["password"])
28
26
 
29
27
  if !user
28
+ print_error "No User Found; Check to see if the email/password combination is correct"
30
29
  render json: 'no', status: :unauthorized
31
30
  else
32
31
  user_data = user_response_data(user)
@@ -36,19 +35,25 @@ module TokenAuthBox
36
35
  end
37
36
 
38
37
  def verify
39
- token = get_header
40
38
  begin
41
- user_data = JWT.decode(token, nil, false).first
39
+ user_data = TokenService.decode extract_token
42
40
  render json: user_data.to_json
43
- rescue
44
- render json: 'oopsie', status: :unauthorized
41
+ rescue StandardError => e
42
+ print_error(e.message)
43
+ render json: "Invalid Token: #{e.message}", status: :unauthorized
45
44
  end
46
45
  end
47
46
 
47
+
48
48
  private
49
49
 
50
- def get_header
51
- request.headers["authorization"].split(" ")[1]
50
+ def extract_token
51
+ auth_header = request.headers["authorization"]
52
+ if auth_header
53
+ request.headers["authorization"].split(" ")[1]
54
+ else
55
+ nil
56
+ end
52
57
  end
53
58
 
54
59
  def user_params
@@ -60,5 +65,12 @@ module TokenAuthBox
60
65
  attrs.delete "password_digest"
61
66
  attrs
62
67
  end
68
+
69
+ def print_error(msg)
70
+ puts params
71
+ puts "Authorization Heaader: #{request.headers["authorization"]}".yellow
72
+ puts "Request Body: #{request.body.read}".yellow
73
+ puts "Errors: #{msg.inspect}".red
74
+ end
63
75
  end
64
76
  end
@@ -11,6 +11,10 @@ class AuthInitGenerator < Rails::Generators::Base
11
11
  mount TokenAuthBox::Engine => '/auth'
12
12
  RUBY
13
13
  end
14
- end
15
14
 
15
+ inject_into_file 'app/models.User.rb', after: "class User < ApplicationRecord\n" do <<-'RUBY'
16
+ has_secure_password
17
+ RUBY
18
+ end
19
+ end
16
20
  end
@@ -5,5 +5,9 @@ module TokenAuthBox
5
5
  def self.gen_token(data)
6
6
  JWT.encode data, nil, 'none'
7
7
  end
8
+
9
+ def self.decode(token)
10
+ JWT.decode(token, nil, false).first
11
+ end
8
12
  end
9
13
  end
@@ -1,3 +1,3 @@
1
1
  module TokenAuthBox
2
- VERSION = '0.0.11'
2
+ VERSION = '0.0.12'
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: token_auth_box
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.11
4
+ version: 0.0.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - drake
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-09-03 00:00:00.000000000 Z
11
+ date: 2019-09-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -66,6 +66,20 @@ dependencies:
66
66
  - - ">="
67
67
  - !ruby/object:Gem::Version
68
68
  version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: colorize
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  description: Description of TokenAuthBox.
70
84
  email:
71
85
  - '='