module WeixinAuthorize::Api::Oauth
def authorize_url(redirect_uri, scope="snsapi_base", state="weixin")
def authorize_url(redirect_uri, scope="snsapi_base", state="weixin") require "erb" redirect_uri = ERB::Util.url_encode(redirect_uri) WeixinAuthorize.open_endpoint("/connect/oauth2/authorize?appid=#{app_id}&redirect_uri=#{redirect_uri}&response_type=code&scope=#{scope}&state=#{state}#wechat_redirect") end
def get_oauth_access_token(code)
def get_oauth_access_token(code) WeixinAuthorize.http_get_without_token("/sns/oauth2/access_token?appid=#{app_id}&secret=#{app_secret}&code=#{code}&grant_type=authorization_code", {}, "api") end
def get_oauth_userinfo(openid, oauth_token, lang="zh_CN")
def get_oauth_userinfo(openid, oauth_token, lang="zh_CN") WeixinAuthorize.http_get_without_token("/sns/userinfo?access_token=#{oauth_token}&openid=#{openid}&lang=#{lang}", {}, "api") end
def refresh_oauth2_token(refresh_token)
def refresh_oauth2_token(refresh_token) WeixinAuthorize.http_get_without_token("/sns/oauth2/refresh_token?appid=#{app_id}&grant_type=refresh_token&refresh_token=#{refresh_token}", {}, "api") end