У меня есть следующий код ниже, но я все равно получаю "CSRF-токен, отсутствующий или неверный". ошибка. кто-нибудь заметил, что я сделал не так?Недопустимый или неверный токен CSRF с использованием JQuery
<form method="post" action="" id="registration">
{{ form.as_p }}
<input type="submit" value="{% trans 'Submit' %}" />
</form>
<script>
$('#registration').submit(function(e){
e.preventDefault(); //prevent default form submit
$.ajax({
url: '/accounts/registerAjax/',
type: 'POST',
contentType: "application/json;charset=utf-8",
dataType: "json",
data: {
'csrfmiddlewaretoken': '{{ csrf_token }}',
'id_username': $("#id_username").val(),
'id_email': $("#id_email").val()
},
success: function() {
alert('Test');
},
error: function(errorThrown){
console.log(errorThrown);
alert('Error');
alert(errorThrown);
}
});
никакой что даст выход HTML правильно? – GrantU
обновлен, чтобы дать лучший ответ, более связанный с jQuery – Ewan
Также посмотрите на документы, обсуждающие 'ajax.beforeSend', тогда вам не нужно беспокоиться о том, чтобы вводить сам csrftoken. – bouke