Выполнение POST-запросов для регистрации нового пользователя через почтальона возвращает 403 Forbidden, проверка CSRF не удалась. Запрос прерван ... Идет по DRF документация и knox auth documentation У меня все настроено правильно. Похоже, что Django SessionAuthentication активируется, хотя у меня его нет в моем DEFAULT_AUTHENTICATION_CLASSES. Я пробовал все возможные решения, которые мог найти, но ничего не работает. Приложение представляет собой Django rest api с интерфейсом React. Любая помощь будет принята с благодарностью.
Настройки аутентификации и разрешений
'DEFAULT_AUTHENTICATION_CLASSES': (
'knox.auth.TokenAuthentication',
),
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.AllowAny',
),
URL-адрес, вызывающий представление as_view
re_path('auth/register', Register.as_view(), name='register'),
Представление регистров на основе классов, расширяющее APIView, которое должно обрабатывать csrf
class Register(APIView):
"""User Registration API View"""
def post(self, request, *args, **kwargs):
if request.method == 'POST':
serializer = RegistrationSerializer(data=request.data)
data = {}
if serializer.is_valid():
user = serializer.save()
data['response'] = 'Account registered successfully'
data['firstName'] = user.first_name
data['lastName'] = user.last_name
data['email'] = user.email
data['token'] = AuthToken.objects.get(user=user).key
return Response(data, status=status.HTTP_201_CREATED)
return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
Ошибка трассировки стека
Forbidden (CSRF cookie not set.): /api/account/auth/register
[20/Jun/2020 12:15:14] "POST /api/account/auth/register HTTP/1.1" 403 2864
Обновление Я нашел проблему и добавил ее в качестве ответа ниже