Je souhaite renvoyer une réponse HTTP 400 à partir de ma Django fonction de vue si les données de la requête GET sont invalides et ne peuvent pas être analysées.
Comment puis-je faire cela? Il ne semble pas y avoir de classe Exception
correspondante comme pour 404:
raise Http404
De mon commentaire précédent:
Vous pouvez retourner un HttpResponseBadRequest
En outre, vous pouvez créer une sous-classe Exception telle que Http404 pour avoir votre propre exception Http400.
Cordialement,
Vous pouvez faire ce qui suit:
from Django.core.exceptions import SuspiciousOperation
raise SuspiciousOperation("Invalid request; see documentation for correct paramaters")
SuspiciousOperation est associé à une réponse 400 autour de la ligne 207 de https://github.com/Django/django/blob/master/Django/core/handlers/base.py
Si vous utilisez le cadre de repos Django Rest, vous pouvez générer une réponse 400 dans une vue:
from rest_framework.exceptions import ValidationError, ParseError
raise ValidationError
# or
raise ParseError