繁体   English   中英

空的request.POST在Django视图中

[英]Empty request.POST in a Django view

将POST请求发送到以下视图时, request.POST词典为空:

@csrf_exempt
def created_query(request):
    if request.method == 'POST':
        print(request.POST)
        server = get_object_or_404(Server, pk=request.POST['server'])
        if server.owner == request.user:
            if server.created:
                return HttpResponse("created")
            else:
                return HttpResponse("pending")
        else:
            return HttpResponseForbidden
    else:
        return HttpResponseForbidden

我尝试了多种生成POST请求的方式,例如以下cURL请求:

curl --request POST \
--url http://localhost:80/created/ \
--form server=60 \
--form action=created

我已经使用调试器以及仅打印它检查了字典,并且字典始终为空。 我怀疑urls.py是否有问题,但是下面是处理此视图的文件所在的行:

url(r'^created/', views.created_query, name='created'),

我们已经尝试过的事情:

从Django 1.5开始,POST不再包含非格式数据。

您可以使用request.body

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM