Сброс содержимого памяти объекта

Мы получали «Требуемый токен защиты от подделки не был предоставлен или недействителен». ошибок, и в результате некоторого дальнейшего расследования мне удалось воссоздать проблему в ее простейшей форме - либо я делаю что-то совершенно не так, либо это ограничение системы токенов защиты от подделки.

В любом случае, я Буду признателен за совет!

Пустой проект MVC 2: одна страница просмотра, один контроллер

вид:

<%--Sign in form:--%>
<% using(Html.BeginForm("SignIn", "Home", FormMethod.Post)) {%>
    <%= Html.AntiForgeryToken()%>
    <input type="submit" value="Sign in" />
<%}%>

Контроллер:

public ActionResult Index()
{
    ViewData["status"] = "Index";
    return View();
}

[ValidateAntiForgeryToken]
public ActionResult SignIn()
{
    ViewData["status"] = "Signed In!";
    FormsAuthentication.SetAuthCookie("username", false);
    return View("Index");
}

[РЕДАКТИРОВАТЬ: пример упрощенного кода]

Чтобы воссоздать исключение, откройте две вкладки без входа - войдите в первую вкладку, а затем войдите во вторую вкладку.

Вторая вкладка всегда будет вызывать исключение защиты от подделки, когда я предполагаю, что правильным поведением будет перенаправление на страницу входа (совместное использование сеанса / аутентификации исходной вкладки входа)

Любые советы будут оценены!

Ура, Dave

5
задан Dave Bish 27 October 2010 в 09:35
поделиться