public async Task <ActionResult <TokenViewModel> > PostAsync([FromBody] TokenInputModel inputModel) { if (inputModel == null) { return(BadRequest()); } try { var result = await _provider.GenerateTokenAsync(inputModel.Email, inputModel.Password); return(Ok(result)); } catch (ArgumentException e) { return(Unauthorized(e.Message)); } }
public Task <ActionResult <TokenViewModel> > PostAsync([FromServices] TokenProvider provider, [FromBody] UserInputModel inputModel) => ExecuteAsync <TokenViewModel>(async() => { var sex = Gender.NotDisclosed; if (inputModel.Gender.ToUpper() == "Masculino".ToUpper()) { sex = Gender.Male; } if (inputModel.Gender.ToUpper() == "Feminino".ToUpper()) { sex = Gender.Female; } var user = new User(inputModel.Name, inputModel.Email, inputModel.Password, inputModel.BirthDate, sex); await _usersRepository.AddAsync(user); await AddDefaultOptionsAsync(user); var result = await provider.GenerateTokenAsync(inputModel.Email, inputModel.Password); return(Ok((TokenViewModel)result)); });
private async Task <object> CreateToken(ClaimsPrincipal principal) { return(await _tokenProvider.GenerateTokenAsync(principal)); }