Django Forbidden (CSRF cookie не установлен.): / POST / HTTP/1.1" 403 2864 на Google Colab
Итак, я пытаюсь запустить мою веб-программу Django на Google collab на основе этого руководства https://medium.com/@arsindoliya/running-django-on-google-colab-ea9392cdee86
И я сделал это, веб может работать! работающий веб
Но, если я хочу сделать POST, то всегда возникает ошибка, подобная этой
Запрещено (CSRF cookie не установлен.): / [22/Feb/2022 02:13:47] "POST / HTTP/1.1" 403 2864
Я уже пробовал некоторые решения, например, поместил CSRF_COOKIE_SECURE = True внутри моего settings.py, но все еще не работает, и я также поместил @csrf_token на моей форме, но все еще не работает.
Также я хочу попробовать это решение для
from django.views.decorators.csrf import csrf_exempt
.
но я все еще не понимаю, как это использовать.
Есть ли у кого-нибудь решение для этого? Я все еще новичок в Django и я сделал его для выпускного проекта моего колледжа, поэтому любое решение, которое вы, ребята, сделаете действительно полезным для меня. Спасибо
2 способа решения этой проблемы.
- закомментируйте код о MIDDLEWARE в settings.py следующим образом: .
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
# 'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
- используйте @csrf_exempt для его обработки, вот так:
from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def rule_api(request):
pass
В Django вы используете метод post, вы должны добавить его:
{% csrf_token %}
Вы можете обратиться по адресу: https://docs.djangoproject.com/en/4.0/ref/csrf/