Example #1
0
        public async Task <ActionResult> Login([FromBody] Login login)
        {
            if (login == null || login.email == null || login.senha == null)
            {
                return(BadRequest("Usuario ou senha invalidos!"));
            }
            try
            {
                var usuario = await UserService.Login(login);

                // Verifica se o usuário existe
                if (usuario == null)
                {
                    return(NotFound(new { message = "Usuário ou senha inválidos" }));
                }
                // Gera o Token
                var token = TokenServiceUser.GenerateToken(usuario);

                Response.Headers.Add("token", token);
                return(Ok(usuario));
            }
            catch (Exception ex)
            {
                return(this.StatusCode(StatusCodes.Status500InternalServerError, $"Erro ao tentar efetuar o login. Erro: {ex.Message}"));
            }
        }