Добавить оператор try / исключением для empce_csrf ()
Обратите внимание, что эта ошибка происходит из rest_framework / authentication.py, внутри класса SessionAuthentication, метода forcece_csrf ().Метод empce_csrf () инициирует переменную check = CSRFCheck (), а в следующей строке указывается «check.process_request (request).
Если вы используете IDE, вы быстро заметите, что CSRFCheck () этого не делаетэтот атрибут / метод, таким образом, является ошибкой. Многие разработчики быстро скажут вам перейти на django> = 1.11.6, но вы обязательно столкнетесь с той же ошибкой. В этом отношении я использую django 1.11.6 и rest_framework 3.9.1.
Так что попробуйте это средство, у меня это сработало. Используйте инструкцию try / исключением. Перейдите в rest_framework / authentication.py, ниже, check = CSRFCheck (), добавьте это ...
def enforce_csrf(self, request):
...
try:
check.process_request(request)
except:
pass
То, что в строках написано так: после объявления переменной «check» вызовите (попробуйте) этот метод «process_request ()» и, если он не работает (за исключением), просто передайте.: Во-первых, вы в буквальном смысле оставляете совместимым исходный код rest_framework (учитывая, что обновление до более поздних версий django «может» решить эту проблему), а во-вторых, вы получаете рабочий код (хорошо !!, особенно если работаетг Agile)