Flask Restfull全局监控错误

在flask蓝图里,我们可以使用@app.errorhandler(500)全局监控蓝图的错误,但是在restfull api中会失效,下面介绍如何早restfull中全局监控错误

1、重写类Api的error_router方法,让Api类自定义错误方式

class Api(_Api):
    def error_router(self, original_handler, e):
        """ Override original error_router to only handle HTTPExceptions. """
        if self._has_fr_route() and isinstance(e, HTTPException):
            try:
                return self.handle_error(e)
            except Exception:
                pass  # Fall through to original handler
        return original_handler(e)

2、这个时候再flask启动文件中使用app.errorhandler就可以监控到;

# app = create_app() 
@app.errorhandler(500)
def server_error(e):
    return jsonify({"code", "message": "自定义错误返回"})


这样可以统一监控到restfull全局报错信息,自定义接口报错返回的信息。自定义错误日志等

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值