public MiniCode2Session AuthUserOpenId() { string code = Request.Query["code"]; MiniCode2Session result = null; if (!string.IsNullOrEmpty(code)) { result = WXApi.GetOpenIdForWxMini(code); result.HasExistInWX = _UserSrv.ExistUnionId(result.unionid); return(result); } return(new MiniCode2Session()); }
public static MiniCode2Session GetOpenIdForWxMini(string code) { try { //构造获取openid及access_token的url WxPayData data = new WxPayData(); data.SetValue("appid", EduConfig.WXAppId); data.SetValue("secret", EduConfig.WXSecret); data.SetValue("js_code", code); data.SetValue("grant_type", "authorization_code"); string url = "https://api.weixin.qq.com/sns/jscode2session?" + data.ToUrl(); MiniCode2Session result = HttpHelper.Get <MiniCode2Session>(url); return(result); } catch (Exception ex) { NLogHelper.ErrorTxt("GetOAuth2AccessTokenFromCode:" + ex.Message); throw new WxPayException(ex.ToString()); } }