1. from django.core.exceptions import DisallowedHost, PermissionDenied, SuspiciousOperation
    
  2. from django.http import (
    
  3.     Http404,
    
  4.     HttpResponse,
    
  5.     HttpResponseRedirect,
    
  6.     HttpResponseServerError,
    
  7. )
    
  8. from django.http.multipartparser import MultiPartParserError
    
  9. 
    
  10. 
    
  11. def innocent(request):
    
  12.     return HttpResponse("innocent")
    
  13. 
    
  14. 
    
  15. def redirect(request):
    
  16.     return HttpResponseRedirect("/")
    
  17. 
    
  18. 
    
  19. def suspicious(request):
    
  20.     raise SuspiciousOperation("dubious")
    
  21. 
    
  22. 
    
  23. def suspicious_spec(request):
    
  24.     raise DisallowedHost("dubious")
    
  25. 
    
  26. 
    
  27. class UncaughtException(Exception):
    
  28.     pass
    
  29. 
    
  30. 
    
  31. def uncaught_exception(request):
    
  32.     raise UncaughtException("Uncaught exception")
    
  33. 
    
  34. 
    
  35. def internal_server_error(request):
    
  36.     status = request.GET.get("status", 500)
    
  37.     return HttpResponseServerError("Server Error", status=int(status))
    
  38. 
    
  39. 
    
  40. def permission_denied(request):
    
  41.     raise PermissionDenied()
    
  42. 
    
  43. 
    
  44. def multi_part_parser_error(request):
    
  45.     raise MultiPartParserError("parsing error")
    
  46. 
    
  47. 
    
  48. def does_not_exist_raised(request):
    
  49.     raise Http404("Not Found")