【发布时间】:2019-10-06 00:07:10
【问题描述】:
我已经建立了一个简单的项目,当发出一个发布请求时,它会根据用户输入的值返回一个响应。
我正在 postman 中测试我的 api 逻辑。
此刻,无论我输入什么值,都会返回相同的 json 响应。这不是预期的逻辑。
views.py:
def function(request):
if request.method == 'POST':
if request.POST.get("number") == 1:
print("Number is 1")
return JsonResponse({'message':'Number is 1'})
else:
print("Number is not 1")
return JsonResponse({'message':'Number is not 1'})
即使number的值等于1,也会返回消息:Number is not 1。
邮递员请求:
{
"number": 1
}
谢谢。
【问题讨论】:
-
request.POST.get("number") == "1",不是1,而是"1" -
嘿@RossRodgers,我尝试将我的数据作为数字和字符串输入,检查我的帖子,我已经更新了。谢谢。
-
你能在你的函数的开头添加一个
print(request.POST)并向我们展示结果吗? -
嘿@CalebGoodman 结果是:
-
@ToanQuocHo 需要使用
request.body的经典案例。request.POST仅用于您自己的视图,而不用于 webhooks/postman。