コード例 #1
0
        public ActionResult Facebook(string accessToken, string returnUrl)
        {
            string redirectUrl = returnUrl;
            if (ModelState.IsValid)
            {
                try
                {

                    var ip = Request.UserHostAddress;
                    var model = new SignInRequest
                    {
                        UserCode  = accessToken,
                        IPAddress = ip
                    };
                    User user;
                    using (var authService = new AuthFacebookSrv())
                    {
                        user = authService.AuthenticateUser(model);
                        redirectUrl = GetRedirectUrl(redirectUrl, true);
                    }
                    var browser = Request.Browser.Browser + Request.Browser.Version;
                    var sessionId = HttpContext.Session.SessionID;
                    LogSessionAsync(browser, ip, user, sessionId);
                    return SafeRedirect(redirectUrl, true);
                }
                catch (SimpleException ex)
                {
                    ModelState.AddModelError("", ex.Message);
                }
            }
            return View("Login");
        }
コード例 #2
0
        public ActionResult Facebook(string accessToken, string returnUrl)
        {
            string redirectUrl = returnUrl;

            if (ModelState.IsValid)
            {
                try
                {
                    var ip    = Request.UserHostAddress;
                    var model = new SignInRequest
                    {
                        UserCode  = accessToken,
                        IPAddress = ip
                    };
                    User user;
                    using (var authService = new AuthFacebookSrv())
                    {
                        user        = authService.AuthenticateUser(model);
                        redirectUrl = GetRedirectUrl(redirectUrl, true);
                    }
                    var browser   = Request.Browser.Browser + Request.Browser.Version;
                    var sessionId = HttpContext.Session.SessionID;
                    LogSessionAsync(browser, ip, user, sessionId);
                    return(SafeRedirect(redirectUrl, true));
                }
                catch (SimpleException ex)
                {
                    ModelState.AddModelError("", ex.Message);
                }
            }
            return(View("Login"));
        }