from django.core.exceptions import ( DisallowedHost, PermissionDenied, SuspiciousOperation, ) from django.http import ( Http404, HttpResponse, HttpResponseRedirect, HttpResponseServerError, ) from django.http.multipartparser import MultiPartParserError def innocent(request): return HttpResponse('innocent') def redirect(request): return HttpResponseRedirect('/') def suspicious(request): raise SuspiciousOperation('dubious') def suspicious_spec(request): raise DisallowedHost('dubious') class UncaughtException(Exception): pass def uncaught_exception(request): raise UncaughtException('Uncaught exception') def internal_server_error(request): status = request.GET.get('status', 500) return HttpResponseServerError('Server Error', status=int(status)) def permission_denied(request): raise PermissionDenied() def multi_part_parser_error(request): raise MultiPartParserError('parsing error') def does_not_exist_raised(request): raise Http404('Not Found')