我已经在StackOverflow上搜索过类似的问题,但找不到对我有用的解决方案。我有以下代码段:
def post_request(request):
if request.method == "POST":
access_token = AccessToken.objects.get(token = request.POST.get("access_token"), expires__gt = timezone.now())
当我向此函数发出HTTP请求时,出现以下错误:AccessToken matching query does not exist.
,我开始调试应用程序。
问题位于request.POST.get("access_token")
request.POST = <QueryDict: {}>
。我没有数据
我正在POSTMAN中发出 POST 请求,我将数据添加到正文 - &gt;形式的数据。我也尝试通过body-&gt; raw-&gt; json发送数据,但无论如何request.POST都不包含任何内容。
我没有Post数据的原因是什么? 如何获取POST数据?
谢谢!
答案 0 :(得分:1)
尝试使用x-www-form-urlencoded
代替form data
。 x-www-form-urlencoded
是HTML表单的默认表单编码。
Django支持enctype="multipart/form-data"
,可用于uploading files。因此,我担心无法解释为什么当您选择form data
时,Postman的请求无效。也许您的请求标题不正确。