【发布时间】:2016-03-20 23:37:51
【问题描述】:
得到一个 csrf 错误我不知道如何修复,我已经休息 auth 工作,用户能够像这样更新他们的详细信息:
但是Django Comments 我使用相同的 csrf 令牌得到这个 csrf 错误错误:
我想消除 /cmets/post/ 端点上的此错误,以便此端点的行为类似于 /rest-auth/user/ 视图,它接受“授权:令牌 792b5fb27b4fe805e895c91274f26b6ab13cb654”标头字段以提供相关信息向经过身份验证的用户发送数据。
以下是 csrf 相关 decotaros 对屏幕截图中显示的各个视图的应用: 从 /cmets/post/ 端点
@csrf_protect
@require_POST
def post_comment(request, next=None, using=None):
# Fill out some initial data fields from an authenticated user, if present
data = request.POST.copy()
if request.user.is_authenticated():
if not data.get('name', ''):
data["name"] = request.user.get_full_name() or request.user.get_username()
if not data.get('email', ''):
data["email"] = request.user.email
来自 /rest-auth/user/ 端点
@api_view(['GET'])
@permission_classes((IsAuthenticated, ))
def get_user(request, **kwargs):
pk = request.data['pk']
user = MyUser.objects.get(pk=pk)
serializers = UsersSerializer(user)
return Response(serializers.data)
【问题讨论】:
标签: django django-rest-framework csrf django-comments django-rest-auth