class Twimock::API::OAuth::RequestToken
Constants
- AUTHORIZATION_REGEXP
- METHOD
- PATH
Public Instance Methods
call(env)
click to toggle source
Calls superclass method
Twimock::API::OAuth#call
# File lib/twimock/api/oauth/request_token.rb, line 14 def call(env) return super unless called?(env) begin authorization_header = env["authorization"] || env["HTTP_AUTHORIZATION"] oauth = parse_authorization_header(authorization_header) consumer_key = oauth.consumer_key raise Twimock::Errors::InvalidConsumerKey.new if !validate_consumer_key(consumer_key) application = Twimock::Application.find_by_api_key(consumer_key) rescue Twimock::Errors::InvalidConsumerKey => @error return unauthorized rescue => @error return internal_server_error end request_token = create_request_token(application.id) status = "200 OK" params = { oauth_token: request_token.string, oauth_token_secret: request_token.secret, oauth_callback_confirmed: true } body = params.inject([]){|a, (k, v)| a << "#{k}=#{v}"}.join('&') header = { "Content-Length" => body.bytesize.to_s } [ status, header, [ body ] ] end
Private Instance Methods
create_request_token(application_id)
click to toggle source
# File lib/twimock/api/oauth/request_token.rb, line 41 def create_request_token(application_id) request_token = Twimock::RequestToken.new(application_id: application_id) request_token.save! request_token end