123456789101112131415161718192021222324252627282930313233343536373839 |
- from django.http import HttpResponse, StreamingHttpResponse
- from django.urls import reverse
- from django.utils.deprecation import MiddlewareMixin
- from . import urlconf_inner
- class ChangeURLconfMiddleware(MiddlewareMixin):
- def process_request(self, request):
- request.urlconf = urlconf_inner.__name__
- class NullChangeURLconfMiddleware(MiddlewareMixin):
- def process_request(self, request):
- request.urlconf = None
- class ReverseInnerInResponseMiddleware(MiddlewareMixin):
- def process_response(self, *args, **kwargs):
- return HttpResponse(reverse('inner'))
- class ReverseOuterInResponseMiddleware(MiddlewareMixin):
- def process_response(self, *args, **kwargs):
- return HttpResponse(reverse('outer'))
- class ReverseInnerInStreaming(MiddlewareMixin):
- def process_view(self, *args, **kwargs):
- def stream():
- yield reverse('inner')
- return StreamingHttpResponse(stream())
- class ReverseOuterInStreaming(MiddlewareMixin):
- def process_view(self, *args, **kwargs):
- def stream():
- yield reverse('outer')
- return StreamingHttpResponse(stream())
|