class SimpleWechat::AuthClient

Attributes

appid[R]
secret[R]

Public Class Methods

new(appid, secret) click to toggle source
# File lib/simple_wechat/auth_client.rb, line 18
def initialize(appid, secret)
  @appid, @secret = appid, secret
end

Public Instance Methods

authorize_url(redirect_uri, state, options = {}) click to toggle source
# File lib/simple_wechat/auth_client.rb, line 22
def authorize_url(redirect_uri, state, options = {})
  scope = options[:scope] ||= "snsapi_base"
  "https://open.weixin.qq.com/connect/oauth2/authorize?appid=#{appid}&redirect_uri=#{CGI.escape redirect_uri}&response_type=code&scope=#{scope}&state=#{state}#wechat_redirect" 
end
connection() click to toggle source
# File lib/simple_wechat/auth_client.rb, line 32
def connection
  @connection ||= begin
    conn = Faraday.new do |faraday|
      faraday.adapter  Faraday.default_adapter
    end 
  end
end
get_token(code) click to toggle source
# File lib/simple_wechat/auth_client.rb, line 27
def get_token(code)
  response = connection.get("https://api.weixin.qq.com/sns/oauth2/access_token?appid=#{appid}&secret=#{secret}&code=#{code}&grant_type=authorization_code")
  access_token = AccessToken.new MultiJson.load(response.body)
end