flask에는 정의된 다양한 데코레이터가 있다.
기본적으로 유용한 데코레이터는 아래와 같다.
- before_first_request : 첫 HTTP 요청에서만 실행됨.
- before_request : HTTP 요청이 들어올때마다 실행됨.
- after_request : HTTP 요청 처리가 끝나고 응답하기 전에 실행됨.
from flask import Flask
import requests
app = Flask(__name__)
@app.before_first_request
def http_first():
print ("HTTP first_request")
@app.before_request
def http_before():
print ("HTTP before_request")
@app.after_request
def http_after(response):
print ("HTTP after_request")
return response
@app.route("/start")
def start():
print("start")
return "<h1>http start</h1>"
if __name__ == "__main__":
app.run(host="127.0.0.1", port="8080")
처음 실행시는 위와 같고 동일한 route 한번 더 접속시 아래와 같다.
HTTP START는 한번만 실행되는 것을 확인할 수 있다.
반응형
'파이썬 > flask' 카테고리의 다른 글
flask macro 콜러함수 caller() (0) | 2020.10.19 |
---|---|
flask 내 윈도우 pc에서 배포하기 (ngrok) (1) | 2020.10.09 |
파이썬 flask jinja2(진자)에서 len, enumerate ,주석 사용하기 (0) | 2020.10.05 |
파이썬기초 flask flash 사용하기 (자바스크립트 alert) (0) | 2020.06.18 |