public ActionResult GetOpenId(string code = "", int type = 0) { string grant_type = "authorization_code"; Return_Msg data = new Return_Msg(); string url = "https://api.weixin.qq.com/sns/oauth2/access_token?appid={0}&secret={1}&code={2}&grant_type={3}"; url = string.Format(url, _appid, _secret, code, grant_type); try { string resultJson = HttpHelper.GetData(url); if (!string.IsNullOrEmpty(resultJson)) { WxAuthorize result = JsonConvert.DeserializeObject <WxAuthorize>(resultJson); if (result != null && !string.IsNullOrEmpty(result.openid)) { data.dataObj = result.openid; C_UserInfo userInfo = C_UserInfoBLL.SingleModel.GetModelByAppId_OpenId(_appid, result.openid); if (userInfo == null) { userInfo = new C_UserInfo(); userInfo.StoreId = 0; userInfo.OpenId = result.openid; userInfo.appId = _appid; userInfo.Id = Convert.ToInt32(C_UserInfoBLL.SingleModel.Add(userInfo)); } if (!string.IsNullOrEmpty(userInfo.TelePhone)) { if (type == 0) { return(Redirect($"/pxhfang/TiXianRecord?phone={userInfo.TelePhone}&openId={data.dataObj}&type={type}&appid={_appid}")); } else if (type == 99) { return(Redirect($"/pxhfang/MyAgentInfo?phone={userInfo.TelePhone}&openId={data.dataObj}&type={type}&appid={_appid}&id={userInfo.Id}")); } else { return(Redirect($"/pxhfang/TiXian?phone={userInfo.TelePhone}&openId={data.dataObj}&type={type}&appid={_appid}&id={userInfo.Id}")); } } return(Redirect($"/pxhfang/CheckPhone?openId={data.dataObj}&type={type}")); } } } catch (Exception ex) { log4net.LogHelper.WriteError(this.GetType(), ex); } return(Content("授权失败")); //return Json(data, JsonRequestBehavior.AllowGet); }
/// <summary> /// 页面加载(微信授权-H5使用) /// </summary> protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { return; } if (AppConfig.Mode == AppConfig.CodeMode.Dev) { #region 内部测试 string unionid = "59C6CEA7FBAB5A19C3177E1216BBACF6"; string nickname = "网站47033"; string headimgurl = "http://wx.qlogo.cn/mmopen/ajNVdqHZLLAMfyaTEB7juwPCNXBEC5SNBkgUgLuQjeu8bgcsiaEM77Y1F83qb05w0UjGJkVCqqgrs1EWic1Pmn5LjYYKJxSgRwwXz7iaxia6to0/0"; string wxParam = $"<{unionid}>,<{unionid}>,<{nickname}>,<{1}>,<{headimgurl}>"; string url = "http://172.16.0.211:6566/develop/majiang/index.html" + "?w=" + Server.UrlEncode(Fetch.AESEncrypt(wxParam, AppConfig.WxH5Key, AppConfig.WxH5Key)); Response.Redirect(url); #endregion } else if (AppConfig.Mode == AppConfig.CodeMode.Production) { #region 客户版本 WxAuthorize jsApiDown = new WxAuthorize(this); try { jsApiDown.GetOpenidAndAccessToken(); jsApiDown.GetUserInfo(); string openid = jsApiDown.Openid; string unionid = jsApiDown.Unionid; string nickname = jsApiDown.Nickname; int sex = jsApiDown.Sex; string headimgurl = jsApiDown.Headimgurl; string wxParam = $"<{openid}>,<{unionid}>,<{nickname}>,<{sex}>,<{headimgurl}>"; ConfigInfo config = Fetch.GetWebSiteConfig(); string url = (config != null ? config.Field4 : "/h5/") + "?w=" + Server.UrlEncode(Fetch.AESEncrypt(wxParam, AppConfig.WxH5Key, AppConfig.WxH5Key)); Response.Redirect(url); } catch (Exception) { Response.Write("<span style='color:#FF0000;font-size:20px'>" + "页面加载出错,请重试" + "</span>"); } #endregion } else if (AppConfig.Mode == AppConfig.CodeMode.Demo) { #region 演示版本 Response.Redirect("http://ry.foxuc.net/JJHAuthorize.aspx?url=" + (LinkUrl.Equals("")?"http://jh.foxuc.net/h5/hall/":LinkUrl)); #endregion } }
/// <summary> /// 页面加载(微信授权-网站使用) /// </summary> protected void Page_Load(object sender, EventArgs e) { if (IsPostBack) { return; } if (AppConfig.Mode == AppConfig.CodeMode.Dev) { #region 内部测试 Random rd = new Random(); string unionid = Utility.MD5(rd.Next(1000000, 9999999).ToString()); string nickname = "网站" + rd.Next(10000, 99999).ToString(); string headimgurl = "http://wx.qlogo.cn/mmopen/ajNVdqHZLLAMfyaTEB7juwPCNXBEC5SNBkgUgLuQjeu8bgcsiaEM77Y1F83qb05w0UjGJkVCqqgrs1EWic1Pmn5LjYYKJxSgRwwXz7iaxia6to0/0"; if (LinkUrl.IndexOf("Card/Index", StringComparison.Ordinal) > 0) { unionid = "o9ZMqwltMdZANFwT5P8FAGS2ZDkk"; } string wxParam = $"<{unionid}>,<{unionid}>,<{nickname}>,<{1}>,<{headimgurl}>"; LinkUrl = LinkUrl + "&w=" + Server.UrlEncode(Fetch.DESEncrypt(wxParam, AppConfig.WxUrlKey)); Response.Redirect(LinkUrl); #endregion } else if (AppConfig.Mode == AppConfig.CodeMode.Production) { #region 客户版本 WxAuthorize jsApiDown = new WxAuthorize(this); try { jsApiDown.GetOpenidAndAccessToken(); jsApiDown.GetUserInfo(); string openid = jsApiDown.Openid; string unionid = jsApiDown.Unionid; string nickname = jsApiDown.Nickname; int sex = jsApiDown.Sex; string headimgurl = jsApiDown.Headimgurl; if (string.IsNullOrEmpty(LinkUrl) || LinkUrl.ToLower().Contains("http") || LinkUrl.ToLower().Contains("https")) { Response.Write("<span style='color:#FF0000;font-size:20px'>" + "页面加载出错,请重试" + "</span>"); return; } string wxParam = $"<{openid}>,<{unionid}>,<{nickname}>,<{sex}>,<{headimgurl}>"; LinkUrl = LinkUrl + "&w=" + Server.UrlEncode(Fetch.DESEncrypt(wxParam, AppConfig.WxUrlKey)); Response.Redirect(LinkUrl); } catch (Exception) { Response.Write("<span style='color:#FF0000;font-size:20px'>" + "页面加载出错,请重试" + "</span>"); } #endregion } else if (AppConfig.Mode == AppConfig.CodeMode.Demo) { #region 演示版本 Response.Redirect("http://ry.foxuc.net/JJAuthorize.aspx?url=" + Server.UrlEncode(LinkUrl)); #endregion } }