django request.POST.items() returns 每次使用 Postman 时都是空列表

django request.POST.items() returns empty list everytime with Postman

我有一个 django 方法,我只是想提取一个 POST 变量:

@csrf_exempt
def update_backer(request):
    for k, v in request.POST.items():
        print(k, v)

    email = request.POST.get("email", "none")

    return JsonResponse({"data":{
        "email":email
    }})

当我尝试通过 javascript XMLHttpRequest 执行 POST 时,我没有获得数据。所以我回到邮递员试图确认事情在 django 端工作。我正在发布数据,但 Django 没有看到它。我做错了什么吗?

编辑:有趣的是,如果我将其更改为 GET 而不是 POST,它会按我预期的那样工作。

对于 POST,请求值在请求 body 中发送。您可以使用 application/x-www-form-urlencoded 内容类型,以便请求正文具有相同格式的查询参数。