public async Task <TokenToReturn> LoginAsync(UserToLogin userToLogin) { userToLogin.UserName = userToLogin.UserName.ToLower(); var userFromRepo = await _userRepo.GetSingleAsync(userToLogin.UserName); if (userFromRepo == null) { throw new Exception("Wrong credentials."); } var result = await _signInManager .CheckPasswordSignInAsync(userFromRepo, userToLogin.Password, false); if (!result.Succeeded) { throw new Exception("Error occurred"); } var userToReturn = _mapper.Map <UserDetail>(userFromRepo); var tokenToReturn = new TokenToReturn { Token = await _tokenService.CreateTokenAsync(userFromRepo), User = userToReturn }; return(tokenToReturn); }
public IHttpActionResult Login(LoginRequest login) { if (login == null) { throw new HttpResponseException(HttpStatusCode.BadRequest); } var res = _user.ValidateUser(login.Username, login.Password); var tokenToReturn = new TokenToReturn { Token = "" }; if (res.Success) { var user = (User)res.Object; var token = TokenGenerator.GenerateTokenJwt(user.ID, user.UserName); tokenToReturn.Token = token; return(Content(HttpStatusCode.OK, tokenToReturn.Token)); } else { return(Content(HttpStatusCode.Unauthorized, "Wrong Crendencials")); } }