2016-07-13 12 views
1

Ich bin eine Django App Fehlersuche.Wie kann ich ein detailliertes Protokoll von Django csrf Fehler erhalten?

Vor kurzem hat die App scheint Randomly CSRF Prüfungsfehler erzeugen:

CSRF verification failed. Request aborted. (Resultierende in einem 403)

Wo finde ich detaillierte Informationen über die Ursache der Fehler bei der Überprüfung zu finden?

+3

Nicht sicher, was Sie erwarten, dass das Protokoll angezeigt wird. Es wird nur wissen, dass das CSRF-Token nicht im POST vorhanden war. –

+0

Dieser Fehler tritt auf, auch wenn ein Token vorhanden ist, aber nicht das erwartete/gültige Token. Informationen über die Fehlerursache wären nützlich (falls vorhanden). –

Antwort

1

Der Fehler, den Sie sehen, ist auf der Client-Seite - die standardmäßig nicht wissen, was auf Ihrem Server falsch ist, wenn Sie DEBUG = True festgelegt haben (was Sie in der Produktion nicht tun möchten).

Wenn es auf Ihrem Staging-Server replizierbar wäre, wäre es leicht zu beheben, da Sie den Fehler mit DEBUG = True beim Staging replizieren und schnell erkennen können, wo die Überprüfung in Djangos csrf.py fehlschlägt.

Was Sie suchen, ist die Ausgabe von which of these error is occurring on your server.

Wenn Sie implement logging in Django sind, können Sie untersuchen und ermitteln, welcher dieser Fehler auf Ihrer Produktionsstätte ausgelöst wurde. Ein Dienst wie Sentry macht dies noch einfacher, da er Ihnen die Rückverfolgung immer dann sendet, wenn ein Fehler auftritt.