BadRequest 无法返回 JSON?

问题描述 投票:0回答:1

我试图返回一个 JSON 对象以及 400 错误代码。 这会正确返回对象(例如

{"email": ["A user with that email address already exists."]}
:

return HttpResponse(json.dumps(dict(form.errors.items())))

而这些都只是返回一个不可读的(通过 javascript)对象(

[object Object]
):

return BadRequest(json.dumps(dict(form.errors.items())))
return HttpResponseBadRequest(json.dumps(dict(form.errors.items())))
return BadRequest(json.dumps(dict(form.errors.items())), content_type='application/json')

我尝试了其他几种发送错误代码的方法,但结果都是一样的。 如何获取可读对象以及 400 Bad Request 错误代码?

django forms validation http-status-code-400
1个回答
0
投票

可能最简单的方法是

JsonResponse
 [Django-doc]
status=400
:

def my_view(request):
    # …
    return JsonResponse(dict(form.errors.items()), status=400)

这也省略了手动序列化。

© www.soinside.com 2019 - 2024. All rights reserved.