python - 如何在 FLASK 中检查 Python 请求是否存在
问题描述
我需要检查python
flask
应用程序是否收到POST
json
请求。
但在返回任何东西之前,我需要检查它是否json
存在。
下面是我的代码。
@app.route("/predict", methods=["POST", "GET"])
def get_predicted_values():
response_ = {}
predicted_values_list = []
request_data = request.get_json()
path = request_data["fpath"]
if path:
print("Found")
else:
print("Not Found")
但是这种方式会出错(当我故意不传递任何json
对象时,因为我需要检查我的if
条件在上面是否有效)
错误是:
path = request_data["fpath"] KeyError: 'fpath'
我想解决这个错误(如果该json
块不存在,不要抛出错误,只需执行其他任何操作(即打印Not Found
而不是上述错误)),我什至使用了try
-except
并且错误仍然相同。
有人可以帮忙吗?
解决方案
尝试is_json
if not request.is_json:
https://flask.palletsprojects.com/en/1.1.x/api/#flask.Request.is_json
推荐阅读
- mysql - MySQL 多个触发器 - 在一个触发器后结束代码
- netbeans - NetBeans IDE 8.2 - 找不到兼容的 JDK
- android-studio - Android Studio 不显示 gradle.properties 文件
- node.js - 路径未定义,
- php - 如何查看mysql是否替换或插入我的查询
- python - Keras 中的 LSTM:顺序 API 和功能 API 之间的参数数量不同
- python - 安装 tkinter 时没有模块名称 _tkinter 错误
- sql - 将 sql 查询更改为在 JOIN 中多次返回相同的值
- sql - .Net Core Serilog SQL 日志到自定义列
- xamarin - 无法获取当前位置 Xamarin.Forms