コード例 #1
0
        public IActionResult LoginByToken([FromBody] IdentityByTokenModel model)
        {
            try
            {
                var identity = identityService.GetToken(model);

                switch (identity.Result)
                {
                case VerificationResult.Ok:
                    return(Ok(identity.Data));

                case VerificationResult.Forbidden:
                    return(BadRequest("UserNotFound"));

                case VerificationResult.WrongCredentials:
                    return(BadRequest("UserIncorrectData"));

                default:
                    return(StatusCode(500));
                }
            }
            catch (Exception ex)
            {
                Log.Error(ex, "Failed to Login");
                return(StatusCode(500, ex.Message));
            }
        }
コード例 #2
0
        public VerificationResultWith <TokenModel> GetToken(IdentityByTokenModel model)
        {
            var user = _dataService.GetById <User>(model.UserId);

            if (user != null && !user.IsActive)
            {
                return new VerificationResultWith <TokenModel> {
                           Result = VerificationResult.Forbidden, Data = null
                }
            }
            ;

            var identity = GetIdentity(user.Email, Uri.UnescapeDataString(model.Token), model.Language, true);

            return(GetTokenInner(user, identity));
        }