Python/Flask
[Flask] Error Handling 방법
yubi5050
2022. 5. 6. 20:54
1. Flask Error Handling 처리 방법
@app.errorhandler(status code) 사용자 정의 에러 핸들러 (데코레이터)가 존재함.
2. Example code
from flask import Flask, jsonify
app = Flask(__name__)
@app.errorhandler(401)
def page_not_found(error):
return redirect("https://developer.mozilla.org/ko/docs/Web/HTTP/Status/401", code=401)
@app.errorhandler(500)
def error_handling_500(error):
return jsonify({'Error': " 500 Error.."}, 500)
@app.route('/api')
def my_service():
raise TypeError("Raise Error ...")
app.run()
3. Flask Redirection / Abort
redirect : Response를 보내 사용자를 원하는 위치로 이동
### Redirect
## 주로 3XX 번대 HTTP Status Code를 보내는 응답
# location : 보내고자 하는 위치
# status code : 300번대 응답 코드
# response : 응답(response)에 필요한 Parameter
# 일반적으로 url_for와 함께 자주 사용
redirect(location, statuscode, response)
### Abort 함수
## 주로 4XX 번대 HTTP Status Code를 보내는 응답
abort(code)