class Rack::OAuth2::Server::Authorize::Request
Attributes
verified_redirect_uri[RW]
Public Class Methods
new(env)
click to toggle source
Calls superclass method
Rack::OAuth2::Server::Extension::ResponseMode::AuthorizationRequest::new
# File lib/rack/oauth2/server/authorize.rb, line 43 def initialize(env) super # NOTE: Raise before redirect_uri is saved not to redirect back to unverified redirect_uri. invalid_request! '"client_id" missing' if client_id.blank? @redirect_uri = Util.parse_uri(params['redirect_uri']) if params['redirect_uri'] @response_mode = params['response_mode'] @state = params['state'] end
Public Instance Methods
error_params_location()
click to toggle source
# File lib/rack/oauth2/server/authorize.rb, line 74 def error_params_location nil # => All errors are raised immediately and no error response are returned to client. end
verify_redirect_uri!(pre_registered, allow_partial_match = false)
click to toggle source
# File lib/rack/oauth2/server/authorize.rb, line 52 def verify_redirect_uri!(pre_registered, allow_partial_match = false) @verified_redirect_uri = if redirect_uri.present? verified = Array(pre_registered).any? do |_pre_registered_| if allow_partial_match Util.uri_match?(_pre_registered_, redirect_uri) else _pre_registered_.to_s == redirect_uri.to_s end end if verified redirect_uri else invalid_request! '"redirect_uri" mismatch' end elsif pre_registered.present? && Array(pre_registered).size == 1 && !allow_partial_match Array(pre_registered).first else invalid_request! '"redirect_uri" missing' end self.verified_redirect_uri.to_s end