public async Task <EnviarAvaliacaoProdutoRS> EnviarAvaliacaoProduto(EnviarAvaliacaoProdutoRQ request) { try { if (request.Authorization == null) { var token = Request.Headers.GetValues("Authorization").FirstOrDefault(); request.Authorization = token; } var container = new UnityContainer(); container.RegisterType <IClienteRepository, ClienteRepository>(); var clienteService = container.Resolve <ClienteRepository>(); if (!clienteService.CheckTokenAuthorization(request.Authorization)) { return(new EnviarAvaliacaoProdutoRS { CodigoRetorno = 401, Mensagens = new List <Messages.Mensagem> { new Messages.Mensagem { Descricao = "Token invalido", Tipo = Messages.TipoMensagem.ErroAplicacao, CodigoErro = "-1" } }, Valido = false, StatusCode = System.Net.HttpStatusCode.BadRequest }); } return(await _avaliacaoService.AdicionarAvaliacaoProduto(request)); } catch (Exception ex) { return(new EnviarAvaliacaoProdutoRS { CodigoRetorno = 400, Mensagens = new List <Messages.Mensagem> { new Messages.Mensagem { Descricao = ex.Message, Tipo = Messages.TipoMensagem.ErroAplicacao, CodigoErro = "-1" } }, Valido = false, StatusCode = System.Net.HttpStatusCode.BadRequest }); } }