通過 errorhandler 處理全局異常,統一傳回json格式的資料
# -*- coding: utf-8 -*-
from flask import Flask, jsonify
app = Flask(__name__)
@app.route("/getInfo")
def get_info():
"""擷取使用者資訊
"""
data = {
"code": 0,
"msg": "ok",
"data": {
"name": "Tom",
}
}
# l = 1/0 # 觸發異常
return jsonify(data)
@app.errorhandler(Exception)
def error_handler(e):
"""
全局異常捕獲
"""
data = {
"code": -1,
"msg": str(e),
"data": None
}
return jsonify(data)
if __name__ == '__main__':
app.run(debug=True)
正确傳回
{
code: 0,
msg: "ok"
data: {
name: "Tom"
}
}
程式報錯傳回
{
code: -1,
data: null,
msg: "division by zero"
}