Ejemplo n.º 1
0
        /// <summary>
        /// 用户登录callback
        /// </summary>
        /// <param name="code"></param>
        /// <param name="state"></param>
        /// <returns></returns>
        public ActionResult UserCallBack(string code, string state)
        {
            if (string.IsNullOrEmpty(code) || string.IsNullOrEmpty(state) || state.Trim(' ') != HomeController.state)
            {
                string msg = Request["msg"];
                ViewBag.ErrorMessage = msg ?? "登录失败";
                return(View("Error"));
            }
            string getAccessTokenUrl = urlHelper.GetUserOauthUrl(code, state);
            var    result            = Redirect(getAccessTokenUrl);
            var    userToken         = proxy.GetAccessTokenResponse(getAccessTokenUrl);

            if (userToken.ret == 0)
            {
                ViewBag.OpenId  = userToken.data.open_id;
                ViewBag.Success = "登录成功";
            }
            else
            {
                ViewBag.Success = userToken.msg;
            }
            return(View());
        }