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 |
댓글