发送JSON时未设置Django CSRF cookie

发送JSON时未设置Django CSRF cookie,django,json,cookies,csrf,django-csrf,Django,Json,Cookies,Csrf,Django Csrf,我猜这个问题很蹩脚,但实际上我在发帖之前已经试过了。因此,所有类似的问题都没有得到回答 我的代码如下: @csrf_protect def login_view(request): if request.method == "GET": return HttpResponse(json.dumps( {'username':request.user.username} ), mimetype='appli

我猜这个问题很蹩脚,但实际上我在发帖之前已经试过了。因此,所有类似的问题都没有得到回答

我的代码如下:

@csrf_protect
def login_view(request):
    if request.method == "GET":
        return HttpResponse(json.dumps(
                   {'username':request.user.username}
               ), mimetype='application/json')
Django在提供此视图时需要向响应添加
Set Cookie
头,但它没有。从该视图获得响应后,
csrftoken
cookie不在那里,它也不在标题中
CSRFMiddleware
已启用并可用于站点的其他部分。我如何让Django设置cookie


求求你,救命

当Django返回json数据时,它不会将cookie值设置为响应头,因此您需要在响应对象中手动设置cookie值。代码如下:

@csrf_protect
def login_view(request):
    if request.method == "GET":
        response =  HttpResponse(json.dumps(
                   {'username':request.user.username}
               ), mimetype='application/json')

        response.set_cookie('hello','world')
        return response

你为什么不批准我的编辑?它显示了我所问的
csrf
问题的答案-本文档中未包含的信息answer@martinthenext昨天被拒绝:CuberChase昨天对此进行了审查:拒绝此编辑不正确或试图回复或评论现有帖子。michaelb958昨天对此进行了评论:拒绝此编辑不正确或试图回复或评论现有帖子。dmahapatro昨天审阅了此内容:批准Java Devil昨天审阅了此内容:拒绝此编辑不正确或试图回复或评论现有帖子。