我正在使用Python Flask开发一个JSON API。
我的目标是始终返回JSON,并指示任何出现的错误消息。
该API也只接受POST请求体中的JSON数据,但如果Flask无法将数据读取为JSON,则默认返回HTML错误400。
最好不强制用户发送 Content-Type
标头,如果是 raw
或者 text
内容类型,仍然尝试解析主体为JSON。
简而言之,我需要一种验证POST请求体是否为JSON的方法,并自行处理错误。
我已经阅读了有关在request
中添加装饰器来完成此操作的内容,但没有全面的示例。
silent=True
,它会引发一个BadRequest
异常。 - Martijn Pietersforce=True
和silent=True
组合使用确实会使request.get_json
在错误或无数据时返回None
,这正是我需要的答案。我会查看@Martijn Pieters的解决方案,但现在我已经有了一个可行的解决方案。 - DrakaSAN