public IActionResult Post(RowMode.Request request) { try { UserService.RowService service = new UserService.RowService(); // Request验证 if (request == null) { throw new Exception("Request无效!"); } // 指向具体执行的方法 switch (request.Function.Name.ToLower()) { case "bywechatno": return(base.ResponseOk( request.ToResponse( service.ByWeChatNo(request.Function.Args[0] ?? "", ToParams(request.Function.Args, 1)) ) )); case "bywechatopenid": return(base.ResponseOk( request.ToResponse( service.ByWeChatOpenId(request.Function.Args[0] ?? "", ToParams(request.Function.Args, 1)) ) )); case "bymobile": return(base.ResponseOk( request.ToResponse( service.ByMobile(request.Function.Args[0] ?? "", ToParams(request.Function.Args, 1)) ) )); default: if (string.IsNullOrEmpty(request.Function.Name) || request.Function.Name.ToLower().Equals("byid")) { return(base.ResponseOk( request.ToResponse( service.ById(int.Parse(request.Function.Args[0] ?? ""), ToParams(request.Function.Args, 1)) ) )); } else { throw new Exception("未发现对应函数方法!"); } } } catch (Exception ex) { throw ex; } }
public IActionResult WeChatVerify(string code) { WeChatEntity entity = JsonConvert.DeserializeObject <WeChatEntity>( HttpGetRequestAsync( @"https://api.weixin.qq.com/sns/jscode2session", new List <KeyValuePair <string, string> >() { new KeyValuePair <string, string>("appid", "wx1682ca244fe65dc6"), new KeyValuePair <string, string>("secret", "a620028546bf65c286e968f9bd416cce"), new KeyValuePair <string, string>("js_code", code), new KeyValuePair <string, string>("grant_type", "authorization_code") }, CONTENT_TYPE.APPLICATION_X_WWW_FORM_URLENCODED ) ); // 微信认证判断 if (entity != null && entity.OpenId != null) { var user = new UserService.RowService().ByWeChatOpenId(entity.OpenId); // 已有用户 if (user != null) { return(new JsonResult(new { result = true, message = "微信认证成功,并找到对应系统用户!", token = GenerateToken(user), weChatEntity = entity, user = new { userId = user.Id, userName = user.Name, realName = user.RealName, weChatOpenId = user.WeChatOpenId } })); } else { return(new JsonResult(new { result = true, message = "微信认证成功,但没有找到对应系统用户!", token = new {}, weChatEntity = entity, user = new { } })); } } else { return(new JsonResult(new { result = false, message = "微信认证失败", token = new {}, weChatEntity = new { }, user = new { } })); } }
public IActionResult GetTokenByMobile(string mobile) { var user = new UserService.RowService().ByMobile(mobile); if (user != null) { return(new JsonResult(new { result = true, message = "认证成功", token = GenerateToken(user), user = new { userId = user.Id, userName = user.Name, realName = user.RealName, weChatOpenId = user.WeChatOpenId } })); } else { return(new JsonResult(new { result = false, message = "认证失败", token = new { }, user = new { } })); } }