2016-06-05 6 views
1

Я не могу передать проверку CSRF ни FORM-POST, ни AJAX-POST. но он работает при тестировании на локальном компьютере или DEBUG=True.Эластичный фасовочный станок Django POST: проверка CSRF не удалась. Запрос прерван

Это то, что я использую для моего приложения Django:

  • Джанго == 1.9.2
  • Джанго-allauth == 0.25.2
  • Джанго-Redis-сессии == 0.5.0
  • gunicorn == 19.4.5
  • AWS elasticbeanstalk одного докер
  • Настроенные AWS elasticbeanstalk балансировки нагрузки, который принимает как HTTP и HTTPS запросить

и settings.py:

SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https') 
SESSION_COOKIE_SECURE = True 
CSRF_COOKIE_SECURE = True 

также, я использовал render(), {% csrf_token %} для визуализации ответа.

Я настроил все ресурсы так, как мог. но все-таки получил CSRF verification failed ...

EDIT После тонн попыток, я обнаружил аномальное поведение: {% csrf_token %} значение обновляется каждый запрос. Я понятия не имею, почему это произошло.

, например,

<form method="post" action="{% url 'www:article' %}"> 
     {% csrf_token %} 
     <fieldset> 
      <input type="text" class="form-control" id="title" name="title"> 
      <input type="text" class="form-control" id="subtitle" name="subtitle"> 
     </fieldset> 
     <input type="submit"> 
</form> 

1st request 
<input type='hidden' name='csrfmiddlewaretoken' value='66Z1Xq1tHReWIkK86dx780L8LPqnuLec' /> 
2nd request 
<input type='hidden' name='csrfmiddlewaretoken' value='zw9HKIO7Pv9TpA5Ru4SlbwqA65sAe8NH' /> 
3rd request 
<input type='hidden' name='csrfmiddlewaretoken' value='wMznTwwELz5F8WmBQIg5pBAezdNdN3xV' /> 

Спасибо за чтение.

ответ

0

Когда вы положили на свой шаблон {% csrf_token %} django create <input type='hidden' name='csrfmiddlewaretoken' value='CMVhN4HQ2Uke6Dg9ytQDFSIAsLjnEAaL' />, это нормально. Вернитесь к своему вопросу, вы пытаетесь поставить {% csrf_token %} внутри формы?

+0

О, извините. '{% csrf_token%}' действительно то, что я сделал. '' просто демонстрация. – makerj

 Смежные вопросы

  • Нет связанных вопросов^_^