Esempio n. 1
0
    def receive_json(self, content, **kwargs):
        # all authenticated messages need to be forwarded to the receive_json_authenticated method
        # however, we should set the current request, so we can rely on the get_current_user() method in our app
        if 'is_authenticated' in self.scope and self.scope['is_authenticated']:
            request = self.scope['request']
            set_current_request(request)
            return self.receive_json_authenticated(content, **kwargs)

        # check for auth requests
        if 'authorization' in content:
            self.scope['is_authenticated'] = False
            # check auth
            auth_token = content['authorization']

            # fake the auth request
            user, auth, request = fake_rest_auth(auth_token, self.scope)

            self.scope['request'] = request
            self.scope['user'] = user

            set_current_request(request)

            if user and not user.is_anonymous:
                self.scope['is_authenticated'] = True
                self.authentication_success(user)
                # send auth_success
                self.send_json({'auth_success': True})

            return

        # else: got unauthorized message
        print("Got an unauthorized message")
        print(content)
Esempio n. 2
0
def set_request_for_user(user):
    """
    Sets the request context for a given system user.

    :param user: User object
    :return: Request context
    """
    request = RequestFactory().request(**{})
    setattr(request, 'user', user)
    set_current_request(request)

    return request
Esempio n. 3
0
 def fake_request_user(user):
     request = RequestFactory().request(**{})
     setattr(request, 'user', user)
     set_current_request(request)
 def process_response(self, request, response):
     logger.debug(u"Process response")
     set_current_request(None)
     return response
 def process_request(self, request):
     logger.debug(u"Process request")
     set_current_request(request)
Esempio n. 6
0
 def process_response(self, request, response):
     logger.debug(u"Process response")
     set_current_request(None)
     return response
Esempio n. 7
0
 def process_request(self, request):
     logger.debug(u"Process request")
     set_current_request(request)