Flask Request Handler, Error Handler

2019. 10. 23. 17:14·Python/Flask
반응형

Request Handler

"""
before_first_request : 웹 어플리케이션 기동 이후 가장 처음에 들어오는 HTTP 요청에서만 실행
before_request : 매 요청시 실행
after_request :  요청이 끝나 브라우저에 응답하기 전에 실행
teardown_request : 요청의 결과가 브라우저에 응답한 다음 실행
teardown_appcontext : HTTP 요청이 완료 되면 실행 되며, 애플리케이션 컨텍스트 내에서 실행
"""


# 웹 브라우저로부터 HTTP 요청이 들어올 때마다 호출되는 메소드
@app.before_request
def before_request():
    g.temp = 'before_request'
    # print(getattr(g, 'temp', None))


# 요청의 처리가 완료될 때 호출되는 메소드
@app.teardown_request
def teardown_request(exception):
    g.temp = 'teardown_request'
    db.session.remove()
    # print(getattr(g, 'temp', None))

 

Error Handler

# 에러 핸들러 및 라우팅 처리를 해줌
@app.errorhandler(HTTPException)
def error_handler(e):
    response = e.get_response()

    response.data = json.dumps({
        'code': e.code,
        'msg' : e.name,
        'desc': e.description,
    })
    response.content_type = 'application/json'

    return response
728x90
반응형
저작자표시 (새창열림)
'Python/Flask' 카테고리의 다른 글
  • Flask Flask-SQLAlchemy
  • Flask 관련...
  • Centos 7 Flask 설치
상쾌한기분
상쾌한기분
  • 상쾌한기분
    상쾌한기분
    상쾌한기분
  • 전체
    오늘
    어제
    • 분류 전체보기 (251)
      • Python (44)
        • Python (26)
        • Django (6)
        • Flask (4)
        • Open Source (6)
      • Kotlin & Java (5)
        • Spring (2)
        • 프로젝트 (1)
      • Go (11)
      • Database (24)
        • MySQL (21)
        • Redis (3)
      • Infrastructure (2)
        • CDC (4)
        • Kafka (5)
        • Prometheus (2)
        • Fluentd (11)
        • Docker (1)
        • Airflow (2)
        • VPN (2)
      • IT (26)
        • AI (9)
        • Langchain (8)
        • Web (18)
        • Git (8)
        • 리팩토링 (9)
        • Micro Service Architecture (8)
        • Clean Code (16)
        • Design Pattern (0)
        • 수학 (1)
        • 알고리즘 (14)
      • OS (14)
        • Centos (10)
        • Ubuntu (3)
        • Mac (1)
      • Search Engine (2)
        • ElasticSearch (1)
        • Lucene Solr (1)
      • PHP (2)
        • Laravel (1)
        • Codeigniter (1)
  • 블로그 메뉴

    • Github 방문
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    git
    Redis
    백준
    http
    performance
    docker
    fluentd
    LLM
    prompt
    Langchain
    go
    python
    파이썬
    오블완
    Golang
    MYSQL
    Kafka
    CDC
    티스토리챌린지
    ollama
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
상쾌한기분
Flask Request Handler, Error Handler
상단으로

티스토리툴바