Nous obtenions des erreurs du type "A required anti-forgery token was not supplied or was invalid.", et après quelques recherches supplémentaires, j'ai réussi à recréer le problème dans sa forme la plus simple - soit je fais quelque chose de complètement faux, soit il s'agit d'une limitation du système de jetons anti-falsification.
Dans tous les cas, j'aimerais avoir des conseils !
Projet MVC 2 vide : une page de vue, un contrôleur
vue :
<%--Sign in form:--%>
<% using(Html.BeginForm("SignIn", "Home", FormMethod.Post)) {%>
<%= Html.AntiForgeryToken()%>
<input type="submit" value="Sign in" />
<%}%>
Contrôleur :
public ActionResult Index()
{
ViewData["status"] = "Index";
return View();
}
[ValidateAntiForgeryToken]
public ActionResult SignIn()
{
ViewData["status"] = "Signed In!";
FormsAuthentication.SetAuthCookie("username", false);
return View("Index");
}
[EDIT : exemple de code simplifié]
Afin de recréer l'exception, ouvrez deux onglets non signés - connectez-vous sur le premier onglet, puis connectez-vous sur le second.
Le deuxième onglet déclenchera toujours une exception anti-falsification, alors que le comportement correct serait de rediriger vers la page de connexion (en partageant la session/authentification de l'onglet de connexion original).
Tout conseil serait apprécié !
A la vôtre, Dave