Drf при использовании SessionAuthentication принудительно делает проверку на наличие валидного CSRF токена для небезопасных методов запроса. Декораторы csrf_exempt работать не будут с SessionAuthentication.
Вариант решения вам, в принципе, уже скидывали ссылками на SO.
from rest_framework.authentication import SessionAuthentication
class CsrfExemptSessionAuthentication(SessionAuthentication):
def enforce_csrf(self, request):
return None
class AddingSomething(GenericAPIView):
permission_classes = (permissions.AllowAny, )
serializer_class = AddSomethingSerializer
authentication_classes = (CsrfExemptSessionAuthentication,)
queryset = None
def post(self, request, **kwargs):
# .. Some magic ..
return HttpResponseRedirect(redirect_to=reverse('something_added'))