Class: OmniAuth::Strategies::WeChat

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

Instance Method Summary collapse

Instance Method Details

#authorize_paramsObject



18
19
20
21
# File 'lib/omniauth/strategies/wechat.rb', line 18

def authorize_params
  params = super
  params.merge({:scope=>'snsapi_base',:appid=>options.client_id})
end

#raw_infoObject



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

def raw_info
  @raw_info ||= begin
    client.request(:get, "https://api.weixin.qq.com/sns/userinfo", :params => {
        :format => :json,
        :openid => uid,
        :oauth_consumer_key => options[:client_id],
        :access_token => access_token.token
      }, :parse => :json).parsed
  end
end

#request_phaseObject



14
15
16
17
# File 'lib/omniauth/strategies/wechat.rb', line 14

def request_phase
  #redirect client.auth_code.authorize_url({:redirect_uri => callback_url}.merge(authorize_params))+'#wechat_redirect'
  redirect client.auth_code.authorize_url({:redirect_uri => 'http://www.intime.com.cn'}.merge(authorize_params))+'#wechat_redirect'
end

#token_paramsObject



23
24
25
26
# File 'lib/omniauth/strategies/wechat.rb', line 23

def token_params
  params = super
  params.merge({:appid=>options.client_id,:secret=>options.client_secret})
end