Class: OmniAuth::Strategies::Meli

Inherits:
OAuth2
  • Object
show all
Defined in:
lib/omniauth/strategies/meli.rb

Overview

Omniauth strategy for authenticating with Mercado Livre via OAuth2

Instance Method Summary collapse

Instance Method Details

#authorize_paramsObject



39
40
41
42
43
44
45
# File 'lib/omniauth/strategies/meli.rb', line 39

def authorize_params
  super.tap do |params|
    params[:response_type] = 'code'
    params[:client_id] = client.id
    params[:redirect_uri] = callback_url
  end
end

#build_access_tokenObject



47
48
49
50
51
52
53
54
55
56
57
# File 'lib/omniauth/strategies/meli.rb', line 47

def build_access_token
  client.get_token(
    {
      code: request.params['code'],
      redirect_uri: redirect_url,
      client_id: client.id,
      client_secret: client.secret,
      grant_type: 'authorization_code'
    }
  )
end

#raw_infoObject



59
60
61
# File 'lib/omniauth/strategies/meli.rb', line 59

def raw_info
  @raw_info ||= access_token.get('users/me', params: access_token.to_hash).parsed || {}
end

#redirect_urlObject



63
64
65
# File 'lib/omniauth/strategies/meli.rb', line 63

def redirect_url
  full_host + callback_path
end