Проверка MAC Viewstate не удалась - PullRequest
1 голос
/ 15 декабря 2009

Я давно получаю сообщение об ошибке проверки состояния на моем сайте, которую мне еще не удалось воспроизвести. Судя по пользовательским агентам и IP-адресам, в основном это спамеры. Я внес несколько исправлений (включая отключение проверки событий и запросов и перемещение скрытых полей представления в верхнюю часть формы), полагая, что вероятной причиной была обратная передача, которая была слишком быстрой, как и большинство вещей, которые я обнаружил при поиске. 1001 *

Тем не менее, в последние несколько дней я заметил ту же проблему, когда запускаю свой браузер, в котором все еще есть сайт разработки, открытый на вкладке предыдущего дня. Он перенаправляет меня на страницу входа, чтобы войти снова. Обычно я не могу войти в систему и использовать его в течение примерно получаса, но как только я это сделаю, он выдает ошибку проверки состояния просмотра. Похоже, что срок действия представления истекает или что-то в этом роде.

Кто-нибудь испытывал состояние представления, истекающее или знает, может ли оно истечь и вызвать проблему как это? Или вы знаете, что еще может вызвать ошибку viewstate, кроме веб-фермы / ключа машины или обратной передачи до полной визуализации формы?

Обновление: я только что сравнил значение скрытого поля _VIEWSTATE между страницей, когда у меня возникла проблема, и той же страницей, когда она работала, и значение было точно таким же.

1 Ответ

1 голос
/ 15 декабря 2009

Viewstate может истечь, если ваше приложение перезагружается, и у вас включены автоматически сгенерированные машинные ключи. MAC Viewstate рассчитывается с использованием машинного ключа, чтобы остановить вмешательство. Если ключ машины меняется, он становится недействительным. Поскольку вы говорите о разработчике со дня накануне, вероятно, именно это и происходит.

Надеюсь, вы не оставили событие и проверка запроса отключена. Если у вас есть ... какой адрес вашего веб-сайта?

...