class OauthIm
Public Instance Methods
auth_request(step = :step1, add_params = nil)
click to toggle source
# File lib/oauth/oauth_im.rb, line 2 def auth_request step = :step1, add_params = nil uri = URI CONFIG[:oauth][@name][:auth][step][:uri] params = CONFIG[:oauth][@name][:auth][:united_params].merge(CONFIG[:oauth][@name][:auth][step].except(:uri)).merge({redirect_uri: @verify_url, state: @key}) # для второго шага params.merge!(add_params) unless add_params.nil? case step when :step1 uri.query = URI.encode_www_form params uri.to_s when :step2 oauth_access_card_params Net::HTTP.post_form uri, params end end
oauth_access_card_params(result)
click to toggle source
# File lib/oauth/oauth_im.rb, line 19 def oauth_access_card_params result begin params = ActiveSupport::JSON.decode(result.body) unless params['error'].present? # add_info = user_self({access_token: params['access_token']}) { state: :ok, oauth_name: @name, oauth_uid: params['user']['id'], access_token: params['access_token'], token_expired: DateTime.now + 30.days, photourl: params['user']['profile_picture'] } else error_response "#{params['error']} #{params['error_reason']} #{params['error_description']}" end rescue Exception => error error_response "rescue #{error.message} #{params} #{result.body}" end end
user_self(access_params)
click to toggle source
# File lib/oauth/oauth_im.rb, line 41 def user_self access_params uri = URI CONFIG[:oauth][@name][:api][:passport][:uri] params = CONFIG[:oauth][@name][:api][:passport][:params] params.merge!(access_params) unless access_params.nil? uri.query = URI.encode_www_form params result = Net::HTTP.get_response uri ActiveSupport::JSON.decode(result.body) end