在 Flask 中检索 POST 的 JSON 数据
构建 Flask API 时,可能会遇到从 POST 请求检索 JSON 数据的情况。以下代码演示了典型的尝试:
@app.route('/api/add_message/<uuid>', methods=['GET', 'POST']) def add_message(uuid): content = request.json print(content) return uuid
但是,此方法可能会在控制台中产生不需要的 None 输出。要成功访问发布的 JSON,必须确保将请求内容类型设置为 application/json。
Flask 文档明确指出 .json 属性和 .get_json() 方法需要 JSON 内容类型:
“如果mimetype表示JSON(application/json,请参阅.is_json),则解析的JSON数据。”
绕过此内容类型要求,您可以在 .get_json() 中使用 force=True 关键字参数。
content = request.get_json(force=True)
请注意,如果在此过程中出现异常,则可能表示 JSON 数据无效。为了确认其有效性,建议使用 JSON 验证器。
以上是如何在 Flask 中可靠地检索 POSTed JSON 数据?的详细内容。更多信息请关注PHP中文网其他相关文章!