public async Task <IActionResult> Login(UsuarioAutenticacionRequest usuarioRequest)
        {
            HttpContext.Session.SetString("UserName1", "Usuario testing");
            return(RedirectToAction("Index", "Home"));
            //try
            //{
            //    if (ModelState.IsValid)
            //    {
            //        var usuarioBus = new UsuarioBus();
            //        string baseUrl = this.configuration.GetSection("AppSettings").GetSection("Servicio").Value;

            //        var usuarioResponse = await usuarioBus.ConsultaUsuario(usuarioRequest, baseUrl);
            //        if (usuarioResponse != null)
            //        {
            //            if (usuarioResponse.IsSuccessStatusCode)
            //            {

            //                string jsonResponse = await usuarioResponse.Content.ReadAsStringAsync();
            //                UsuarioAutenticacionResponse Response = JsonConvert.DeserializeObject<UsuarioAutenticacionResponse>(jsonResponse);
            //                HttpContext.Session.SetString("UserName1", Response.NombreCompleto);
            //                return RedirectToAction("Index", "Home");
            //            }
            //            else
            //            {
            //                switch (usuarioResponse.StatusCode)
            //                {
            //                    case HttpStatusCode.Unauthorized:
            //                        var mensajeSinAutorizacion = JsonConvert.DeserializeObject<SinAutorizacionResponse>(usuarioResponse.Content.ReadAsStringAsync().Result);
            //                        ModelState.AddModelError("ErrorMensaje", mensajeSinAutorizacion.Mensaje);
            //                        break;
            //                    case HttpStatusCode.InternalServerError:
            //                        var mensajeErrorInterno = JsonConvert.DeserializeObject<ErrorInternoResponse>(usuarioResponse.Content.ReadAsStringAsync().Result);
            //                        ModelState.AddModelError("ErrorMensaje", mensajeErrorInterno.Mensaje);
            //                        Console.Write("Error");
            //                        break;
            //                    default:
            //                        ModelState.AddModelError("ErrorMensaje", "Error interno en la aplicación web.");
            //                        Console.Write("Error");
            //                        break;
            //                }
            //            }
            //        }
            //        else
            //        {
            //            ModelState.AddModelError("ErrorMensaje", "Error de comunicación con el servidor.");
            //        }
            //    }
            //}
            //catch (Exception ex)
            //{
            //    ModelState.AddModelError("ErrorMensaje", "Error interno en la web.");
            //    Console.Write(ex.Message);
            //}

            //return View(usuarioRequest);
        }
示例#2
0
        public async Task <HttpResponseMessage> ConsultaUsuario(UsuarioAutenticacionRequest request, string baseUrl)
        {
            HttpResponseMessage response = null;

            try
            {
                using (var client = new HttpClient())
                {
                    var data = new StringContent(JsonConvert.SerializeObject(request), Encoding.UTF8, "application/json");
                    response = await client.PostAsync(baseUrl + "login", data);
                }
            }
            catch (Exception ex)
            {
                Console.Write(ex);
            }
            return(response);
        }