본문 바로가기
TIL - 프로그래밍/개념, 설정

Django Handling HTTP requests

by chaemj97 2022. 4. 18.
728x90
  • Django에서 HTTP 요청 처리 방법
    • Django shortcut functions
    • View decorators
  • Django shortcut functions
    • render()
    • redirect()
    • get_object_or_404()
      • 모델 manager인 objects에서 get()을 호출하지만, 해당 객체가 없을 경우 DoesNotExist 예외 대신 Http 404를 raise
      • get()에 경우 조건에 맞는 데이터가 없을 경우에 예외를 발생 시킴
      • 상황에 따라 적절한 예외처리를 하고 클라이언트에게 올바른 에러 상황을 전달하는 것 또한 개발의 중요한 요소 중 하나
  • Django View decorators
    • Django는 다양한 HTTP 기능을 지원하기 위해 view 함수에 적용할 수 있는 여러 데코레이터를 제공
    • Decorator
      • 원본 함수를 수정하지 않으면서 추가 기능만을 구현할 때 사용
    • Allowed HTTP methods
      • 요청 메서드에 따라 view 함수에 대한 엑세스를 제한
      • 요청이 조건을 충족시키지 못하면 HttpResponseNotAllowed를 return(405 Method Not Allowed)
      • from django.views.decorators.http import ~~
        • require_http_methods() : view 함수가 특정한 method 요청에 대해서만 허용하도록 하는 데코레이터
        • require_POST() : view 함수가 POST method 요청만 승인하도록 하는 데코레이터
        • require_safe() : view 함수가 GET 및 HEAD method만 허용하도록 요구하는 데코레이터

 

 

 

728x90
반응형

'TIL - 프로그래밍 > 개념, 설정' 카테고리의 다른 글

[Python] 시간 초과 해결 방법  (0) 2022.04.23
REST API  (0) 2022.04.19
[Python] User  (0) 2022.04.18
[Python] 외부 키, 참조  (0) 2022.04.17
[Python] ORM aggregate  (0) 2022.04.16

댓글