public IActionResult IniciarSesion([FromBody] IniciarSesionDTO iniciarSesionDTO) { var usuarioAutenticado = this.userService.Authenticate(iniciarSesionDTO.Correo, iniciarSesionDTO.Contrasena); if (usuarioAutenticado != null) { return(Created("", usuarioAutenticado)); } else { return(Forbid()); } }
public async Task <ActionResult> Login(LoginModel dto) { // recibe los datos del elemento try { if (!TryValidateModel(dto, nameof(LoginModel))) { return(View(dto)); } IniciarSesionDTO lg = new IniciarSesionDTO() { correo = dto.correo, contrasenia = dto.contrasenia }; Usuario u = await up.IniciarSesion(lg.correo, lg.contrasenia); // si los datos no son correctos if (u == null) { dto.loginOk = false; return(View(dto)); } Session["datosLogeados"] = u; Session["token"] = u.persona.contrasenia; // si solo tiene un rol, es un usuario comun, y se le redirige a su pagina de inicio if (u.persona.GetRoles().Count == 1) { return(RedirectToAction("Index", "Usuario")); } //redirige al inicio return(RedirectToAction("Index", "Home")); } catch { // redirigir segun ele rror // Llama a la funcion de este controlador (no es una ruta) Session.Remove("datosLogeados"); return(View()); } }
public async Task <Usuario> IniciarSesion(string correo, string contrasenia) { try { IniciarSesionDTO ins = new IniciarSesionDTO() { correo = correo, contrasenia = contrasenia }; HttpResponseMessage response = await client.PostAsJsonAsync(basePath + "IniciarSesion", ins); response.EnsureSuccessStatusCode(); return(await response.Content.ReadAsAsync <Usuario>()); } catch (Exception e) { throw e; } }
public Usuario IniciarSesion([FromBody] IniciarSesionDTO dto) { try { Usuario u = blu.IniciarSesion(dto.correo, dto.contrasenia); if (u == null) { return(null); } u.persona.contrasenia = null; var token = TokenGenerator.GenerateTokenJwt(u); u.persona.contrasenia = token; return(u); } catch (Exception e) { throw new HttpResponseException(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, e.Message)); } }