programing

Django에서 HTTP 400 응답을 반환하는 방법은 무엇입니까?

itsource 2021. 1. 15. 08:10
반응형

Django에서 HTTP 400 응답을 반환하는 방법은 무엇입니까?


요청 GET 데이터가 유효하지 않고 구문 분석 할 수없는 경우 django보기 함수에서 HTTP 400 응답을 반환하고 싶습니다.

어떻게해야합니까? Exception404와 같은 해당 클래스 가없는 것 같습니다 .

raise Http404

내 이전 댓글에서 :

HttpResponseBadRequest를 반환 할 수 있습니다.

또한 Http404와 같은 Exception 하위 클래스를 만들어 고유 한 Http400 예외를 가질 수 있습니다.

문안 인사,


다음을 수행 할 수 있습니다.

from django.core.exceptions import SuspiciousOperation
raise SuspiciousOperation("Invalid request; see documentation for correct paramaters")

SuspiciousOperation은 https://github.com/django/django/blob/master/django/core/handlers/base.py의 207 행 주위에 400 응답에 매핑됩니다.


Django Rest Framework를 사용하는 경우 뷰에서 400 응답을 올리는 두 가지 방법이 있습니다.

from rest_framework.exceptions import ValidationError, ParseError

raise ValidationError

# or 
raise ParseError

참조 URL : https://stackoverflow.com/questions/23492000/how-to-return-http-400-response-in-django

반응형