2010-11-19 5 views
1

J'ai un petit problème avec le jeton dans django.Problème django et csrf_token

Lorsque j'écris un formulaire POST et que j'ajoute {{csrf_token}}, lorsque je le soumets, le jeton est vérifié.

Mais lorsque j'envoie une requête POST (en ajax) et que j'ajoute manuellement le paramètre csrfmiddlewaretoken, le jeton n'est pas vérifié.

Mais je ne sais pas pourquoi?

Merci.

Répondre

6

Les requêtes AJAX ne sont pas vérifiées pour CSRF: la même politique d'origine du navigateur signifie que les attaques CSRF sont beaucoup plus difficiles. Voir the explanation in the docs.

+0

OK, mais si j'utilise un ancien navigateur, dans ceux-ci le Ajax Cross Domain fonctionnera, non? – cocacola

+0

Non. Ce sont les nouveaux navigateurs qui ont assoupli la politique d'origine identique dans certaines circonstances limitées: les anciens navigateurs sont stricts. –

+0

Ah ok, merci. Mais alors, savez-vous s'il est prévu, dans une future version django, de le vérifier puisque nos navigateurs le permettent? – cocacola