2014-12-09 8 views
8

Ich habe eine MVC Web App auf azurblau, und ein paar hundert Mal am Tag, bekomme ich eine The required anti-forgery cookie "__RequestVerificationToken" is not present. in meine unbehandelten Ausnahmen Protokolle.Gelegentliche __RequestVerificationToken Fehler

Ich habe alles richtig eingerichtet, meine Aktionsmethode hat die [ValidateAntiForgeryToken].

Ich kann sehen, durch die Ausnahmedetails, dass das Token im Formular vorhanden war, aber das Cookie nicht vorhanden war.

Wer weiß, was könnte das verursachen?

Hier ist der Fehler vollständig.

System.Web.Mvc.HttpAntiForgeryException (0x80004005): The required anti-forgery cookie "__RequestVerificationToken" is not present. 
    at System.Web.Helpers.AntiXsrf.TokenValidator.ValidateTokens(HttpContextBase httpContext, IIdentity identity, AntiForgeryToken sessionToken, AntiForgeryToken fieldToken) 
    at System.Web.Helpers.AntiXsrf.AntiForgeryWorker.Validate(HttpContextBase httpContext) 
    at System.Web.Helpers.AntiForgery.Validate() 
+0

Matt lösen sein, haben Sie eine Lösung für dieses Problem gefunden? Ich bekomme diese Fehler gelegentlich auch. – mai

+0

@MarkA - Könnten einige Web Crawler/Bots sein? Eine umgekehrte DNS-Suche mit den IPs, die diese Ausnahmen verursacht haben, kann Ihnen helfen, die Ursache zu finden. – Shiffty

+0

Nein. Es sind keine Crawler. Dies geschieht auf einigen am häufigsten aufgerufenen Seiten, auf die nur authentifizierte Benutzer zugreifen können. – mai

Antwort

3

Dies kann durch viele Probleme verursacht werden. Dinge, die das Problem verursachen können:

  • Bots oder Kunden ohne Cookies aktiviert
  • Zu viele Cookies auf dem Client erstellt wird (es gibt nur so viele Cookies Browser pro Domain verarbeiten kann) und AntiForgeryCookie landet entfernt wird
+0

Obwohl mir das anscheinend geholfen hat, ist das für mich nicht die Antwort :(Wir verwenden eine minimale Menge an Cookies, und es ist kein Bot. Ich glaube nicht, dass das generierte Token die Größe von 4096 überschreiten wird –

0

Hauptproblem ist Ihr Client Cookie Problem zunächst klar Browser-Cache dann überprüfen, ich denke, dann wird Ihr Problem