side net mvc formulario form for asp .net jquery asp.net-mvc forms-authentication

.net - net - mvc required field validation



Autenticación de jQuery Forms con ASP.NET MVC (3)

¿Es posible utilizar una llamada jQuery ajax para realizar la Autenticación de formularios con ASP.NET MVC? No he podido encontrar ninguno de esos ejemplos.

Más específicamente, ¿cómo configuro la cookie de autenticación en la página (sin una redirección) para poder realizar sucesivas solicitudes de ajax autenticadas?


Eche un vistazo a xVal . Puede usar cualquier biblioteca de validación del lado del cliente, pero usa la validación jQuery de forma predeterminada.



Si es posible. Solo envíe el formulario de inicio de sesión utilizando el método descrito aquí por Mike Bosch y devuelva una estructura de datos json con returnUrl si lo hay.

Creé una clase liviana LoginResultDTO que devuelvo como json:

public class LoginResultDTO { public bool Success {get;set;} public string Message {get;set;} public string ReturnUrl {get;set;} }

Aquí hay un bloque de script de mi vista LogOn:

<script type="text/javascript"> $(document).ready(function() { var form = $($("form")[0]); form.submit(function() { var data = form.serialize(); $.post(form.attr("action"), data, function(result, status) { if (result.Success && result.ReturnUrl) { location.href = result.ReturnUrl; } else { alert(result.Message); } }, "json"); return false; }); }); </script>

Esto ajax envolverá el formulario de inicio de sesión. Tenga en cuenta que esta es la implementación más simple del código de JavaScript posible, pero es un buen lugar para comenzar.

Luego modifiqué mi acción LogOn en AccountController y en los lugares relevantes pongo algo como esto:

if(Request.IsAjaxRequest()) { return Json(new LoginResultDTO{Success=true,Message="Successfully logged in"}); }else { return View(); }

Así que esta es una versión ultraligera pero bastante completa de cómo se puede realizar la autenticación jquery en asp.net mvc.