Example #1
0
        public async Task <ApiResponse> LoginAsync(LoginModel model)
        {
            var response            = new ApiResponse();
            var authenticationModel = new AuthenticationModal();
            var user = await _userManager.FindByEmailAsync(model.Email);

            if (user == null)
            {
                response.StatusCode = (int)HttpStatusCode.BadRequest;
                response.Data       = $"Account Not Found.";
                return(response);
            }

            if (await _userManager.CheckPasswordAsync(user, model.Password))
            {
                JwtSecurityToken jwtSecurityToken = await CreateJwtToken(user);

                authenticationModel.Token = new JwtSecurityTokenHandler().WriteToken(jwtSecurityToken);
                authenticationModel.Email = user.Email;
                response.StatusCode       = (int)HttpStatusCode.OK;
                response.Data             = authenticationModel.Token;

                return(response);
            }

            response.StatusCode = (int)HttpStatusCode.BadRequest;
            response.Data       = $"Incorrect Credentials for user {user.Email}";
            return(response);
        }
        public IActionResult Login([FromBody] AuthenticationModal modal)
        {
            User user = UserService.Authenticate(modal.UserName, modal.Password);

            if (user == null)
            {
                return(BadRequest("Ivalid Username/password"));
            }
            return(Ok());
        }