我遇到了一个奇怪的情况,我登录网站并尝试提交表单,如果我使用 permission_classes = [AllowAny]
或 isAuthenticate 类我得到错误 CSRF Failed: CSRF token missing or incorrect
在以下情况下,它会弹出一个输入密码和用户名的窗口。我的全班就像
class AddReview(APIView):
serializer_class = ReviewSerializer
authentication_classes = (BasicAuthentication,)
def post(self, request):
rest = request.POST.get('restaurant')
dish = request.POST.get('dish')
我的settings.py 是
REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
'rest_framework.permissions.IsAuthenticated',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
'rest_framework.authentication.SessionAuthentication',
'rest_framework.authentication.BasicAuthentication',
),
}
我只想提交一个自定义表单来提交数据。任何使问题变得好的帮助或建议都会受到高度重视。
更新
我可以使用这个提交表格
class SessionAuthentication(SessionAuthentication):
def enforce_csrf(self, request):
return
但是为什么我要强制执行呢?我做错了什么?