app/controllers/oauth2/users_controller.rb in vidibus-oauth2_server-0.0.6 vs app/controllers/oauth2/users_controller.rb in vidibus-oauth2_server-0.0.7
- old
+ new
@@ -1,21 +1,31 @@
class Oauth2::UsersController < Oauth2Controller
before_filter :ensure_token!
- before_filter :find_user
+ before_filter :ensure_user
def show
- attributes = @user.try!(:oauth_attributes) || @user.attributes.only(*%w[name email uuid])
+ attributes = user.try!(:oauth_attributes) || user.attributes.only(*%w[name email uuid])
render :json => attributes
end
protected
- def find_user
- @user = User.where(:uuid => @access_token.user_id).first or render(:nothing => true, :status => :bad_request)
+ def user
+ @user ||= User.where(:uuid => @access_token.user_id).first
end
+ def ensure_user
+ unless user
+ render(:nothing => true, :status => :bad_request)
+ end
+ end
+
def ensure_token!
- unless token = params[:access_token] || params[:oauth_token]
+ if header = request.headers['Authorization']
+ token = header[/Bearer (.+)/, 1]
+ end
+ token ||= params[:access_token] || params[:oauth_token]
+ unless token
raise Vidibus::Oauth2Server::MissingTokenError
end
@access_token = Oauth2Token.find!(:token => token)
end
end