python 內置模塊traceback捕獲並打印異常

traceback 是內置模塊不用pip install

1、traceback.print_exc()
2、traceback.format_exc()
3、traceback.print_exception()

簡單說下這三個方法是做什麼用的:
1、print_exc():是對異常棧輸出
2、format_exc():是把異常棧以字符串的形式返回,print(traceback.format_exc()) 就相當於traceback.print_exc()
3、print_exception():traceback.print_exc()實現方式就是traceback.print_exception(sys.exc_info()),可以點sys.exc_info()進去看看實現

import json
import traceback
from  context import InteropHandler
from flask import Flask, request, json, jsonify, Response


dialog = Flask(__name__)


@dialog.route('/d', methods=['POST'])
def interop():
    if request.method == 'POST':
        try:
            json_data = request.get_data()
            d_content = InteropHandler.interop(json_data)
            return Response(json.dumps(d_content), status=200, mimetype='application/json')
        except Exception:
            #構建錯誤內容...
            erro = {'code':100, 'msg': traceback.format_exc()}
            return Response(json.dumps(erro), status=500,mimetype='application/json')
        finally:
            pass
    return Response('請求方法不支持的{}'.format(request.method), status=400)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章