【问题标题】:How to see application logs in Django Rest Framework?如何在 Django Rest Framework 中查看应用程序日志?
【发布时间】:2018-12-26 21:55:46
【问题描述】:

在测试中,我正在进行 api 调用,它返回 400。这是预期的,但我找不到调试它的方法。 django 是否将日志保存在某个文件中?或者我可以启用显示日志吗?

res = self.client.post(self.url, data=payload, format='json')
print(res)

// <Response status_code=400, "application/json">

我发现出了点问题,但我该如何调试服务器?

谢谢

【问题讨论】:

  • 那行得通。谢谢你。现在我意识到它给了我 str 方法的输出。

标签: django django-rest-framework


【解决方案1】:

您可以使用response.content 以字节串的形式查看将在网页上呈现的最终内容/错误消息。 docs

>>> response = c.get('/foo/bar/')
>>> response.content
b'<!DOCTYPE html...

如果您要返回一个 json 响应(如果使用的是 rest 框架,您可能就是这样),您可以使用 response.json() 来解析 json。 docs

>>> response = client.get('/foo/')
>>> response.json()['name']
'Arthur'

注意:如果Content-Type 标头不是"application/json",则在尝试解析响应时将引发ValueError。一定要妥善处理。

【讨论】:

    猜你喜欢
    • 2011-12-15
    • 1970-01-01
    • 2021-11-22
    • 1970-01-01
    • 2011-12-21
    • 2020-10-28
    • 2017-05-24
    • 2017-05-20
    • 1970-01-01
    相关资源
    最近更新 更多