Flask 处理多个错误

胡椒会员

我有一个用 Flask 制作的简单应用程序。它仅使用 POST 方法。它需要 2 个数字(在 json 中)并将它们相加。

{"a": 1, "b": 1}

应用程序以这些数字的总和进行响应(也在 json 中)。

{"sum": 2}

代码如下所示:

@appFlask.route('sum', methods=['POST'])
def result():
    data = request.get_json()
    return jsonify({'sum': data['a'] + data['b']})

我想做错误处理。问题是这些错误很多,例如对于以下调用,它们应该返回“400 Bad Request”或者文件不在 json 中。

{"a":1, "b":1, "c":1}
{"a", "a":1, "b":1}
{}
{"a":1}
{"a":0, "b":1}

我怎样才能以最简单的方式制作它?有没有办法在一个函数中做到这一点?

烧焦

您可以使用捕获错误,然后您可以返回“400 Bad Request”并返回一个数据示例并将其验证给用户。

@appFlask.route('sum', methods=['POST'])
def result():
    try:
       data = request.get_json()
       # check if a or b is not 0
       if data['a'] == 0 or data['b'] == 0:
           raise Exception("Error occurred")
       return jsonify({'sum': data['a'] + data['b']})
    except Exception as e:
       return "400 Bad Request"
    

示例中提到的所有其他调用都将生成错误,这些错误将被缓存。

您无需担心,{"a":1, "b":1, "c":1}因为它不会影响代码,但如果您想将其视为错误请求,则需要对其进行检查。

您肯定需要根据需要进行检查,因为没有内置功能。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章