Проверка CSRF не удалась. Запрос прерван.Ни одно решение в интернете не работает для меня

В моих формах с тем же токеном я добавляю @csrf_exemp, но так как в логине я использую Django по умолчанию у меня нет вида логина, я поместил токен в каждый шаблон и деактивировал MIDDLEWARE в настройках и ничего не решило проблему также у меня есть хост в порядке, я могу зарегистрироваться, но не войти в систему, ни в админке django это дает мне ту же ошибку. введите описание изображения здесь

{% extends "layout.html" %} {% block content %} {% load static %} {% load crispy_forms_tags %}

 <main style="min-height: 100vh">
  <section>
   <div class="container p-4" style="min-height: 100vh">
    <div class="row">
     <div class="col-12 col-md-6 offset-md-3">
       <div class="card bg-black">
        <div class="card-body">
          <h2 class="h3">Login</h2>
          <form method="post">
            {% csrf_token %} {{ form | crispy }}
            <a href="{% url 'main' %}">Home</a>
            |
            <a href="{% url 'sign_up' %}">Sign Up</a>
            <input type="submit" class="btn btn-success" value="login" />
          </form>
        </div>
      </div>
    </div>
    </div>
   </div>
 </section>
</main>

{%endblock%}

Вам необходимо установить это значение на ваше settings.py или .env:

ALLOWED_HOSTS = ['chgeimsprueba.herokuapp.com']
CSRF_TRUSTED_ORIGINS = ['chgeimsprueba.herokuapp.com']

Проверьте, не сделал ли я опечатку, получить их из вашего скриншота было не так просто :)

Поскольку Heroku автоматически переводит https запросы в http, прежде чем они достигнут вашего приложения Django, вам нужно настроить Django на разрешение POST запросов с другой схемы ( начиная с Django 4.0), добавив это в settings.py:

CSRF_TRUSTED_ORIGINS = ['https://chgeimsprueba.herokuapp.com']

Обязательно включите схему https:// !

Вернуться на верх