          try:
              # Get a custom request, built form the original request instance
              self.request = request = self.get_request()
  
              self.initial(request, *args, **kwargs)
  
              # Authenticate and check request has the relevant permissions
              self._check_permissions()
  
              # Get the appropriate handler method
 
</s> remove         self.headers = {}
 </s> add  </s> remove                 return {'FILE_NAME': self.CONTENT['file'].name,
                        'FILE_CONTENT': self.CONTENT['file'].read()}
 </s> add                 return Response({'FILE_NAME': self.CONTENT['file'].name,
                        'FILE_CONTENT': self.CONTENT['file'].read()}) </s> remove             response_obj = handler(request, *args, **kwargs)

            # Allow return value to be either HttpResponse, Response, or an object, or None
            if isinstance(response_obj, HttpResponse):
                return response_obj
            elif isinstance(response_obj, Response):
                response = response_obj
            elif response_obj is not None:
                response = Response(status.HTTP_200_OK, response_obj)
            else:
                response = Response(status.HTTP_204_NO_CONTENT)
 </s> add             # TODO: should we enforce HttpResponse, like Django does ?
            response = handler(request, *args, **kwargs)

            # Prepare response for the response cycle.
            self.prepare_response(response) </s> remove         self.view.DATA  # Make sure our generic parsing runs first
 </s> add         request.DATA  # Make sure our generic parsing runs first
            # `initial` is the opportunity to temper with the request, 
            # even completely replace it.
            self.request = request = self.initial(request, *args, **kwargs)
          try:
              # Get a custom request, built form the original request instance
              self.request = request = self.get_request()
  
            # `initial` is the opportunity to temper with the request, 
            # even completely replace it.
            self.request = request = self.initial(request, *args, **kwargs)
  
              # Authenticate and check request has the relevant permissions
              self._check_permissions()
  
              # Get the appropriate handler method
keep keep keep keep replace keep keep keep keep keep
 Response as a subclass of HttpResponse - first draft, not quite there yet. 
djangorestframework/views.py