                      request._post = {}
  
              resp = CsrfViewMiddleware().process_view(request, None, (), {})
  
              # Replace request.POST
              if request.method.upper() == 'POST':
                  del(request._post)
  
              if resp is None:  # csrf passed
                  return request.user
          return None
  
  
 
</s> remove         # TODO: Might be cleaner to switch this back to using request.POST,
        #       and let FormParser/MultiPartParser deal with the consequences.
 </s> add         self.view.DATA  # Make sure our generic parsing runs first
 </s> remove 
            # Temporarily replace request.POST with .DATA, to use our generic parsing.
            # If DATA is not dict-like, use an empty dict.
            if request.method.upper() == 'POST':
                if hasattr(self.view.DATA, 'get'):
                    request._post = self.view.DATA
                else:
                    request._post = {}

 </s> add 
                      request._post = {}
  
              resp = CsrfViewMiddleware().process_view(request, None, (), {})
  




              if resp is None:  # csrf passed
                  return request.user
          return None
  
  
keep keep keep keep replace replace replace replace keep keep keep keep keep
 Fix UserLoggedInAuthentication for POST requests.

Fixes #78. 
djangorestframework/authentication.py