semvec/pypi-packages huggingface dataset:
jwt-user 0.0.9
Authorize user via jwt
Keywords: sample setuptools development

jwt_user
=====

A Python implementation of acquiring, authorizing user from jwt token.
designed to work for any request entity from flask,django,tornado frameworks. 

Installing
----------

Install with **pip**:

    $ pip install jwt_user


Usage
-----

    >>> import jwt_user
    >>> payload = {'username': 'test'}
    >>> token = jwt_user.generate_token(payload)
    >>> request = jwt_user.generate_request(token)
    >>> user = jwt_user.get_jwt_user(request)
    >>> user
    {}
    >>> user.username
    'test'
    >>> #Second usage
    ... 
    >>> import tornado
    >>> BaseRequestHandler = tornado.web.RequestHandler
    >>> class MainHandler(BaseRequestHandler):
    ...     @jwt_user.authorized_user
    ...     def get(self):
    ...         self.write('Hello, Authorized user')
    ...
    >>> class MainUserHandler(BaseRequestHandler):
    ...     @jwt_user.authorized_user
    ...     def get(self):
    ...         user = jwt_user.get_jwt_user(self.request)
    ...         self.write('Hello, {}'.format(user.username))
    >>>
    >>> os.environ['JWT_EXPIRATION_DELTA'] = '3400'
    >>> os.environ['JWT_PRIVATE_KEY'] = 'some random hexa private text'
    >>> os.environ['JWT_SECRET_KEY'] = 'some random hexa secret text'
    >>> os.environ['JWT_AUTH_HEADER'] = 'Authorization'
    >>> os.environ['JWT_AUTH_HEADER_PREFIX'] = 'Bearer'
    >>> def make_app():
    ...     user_valid_fields = {'username', 'user_id', 'token'}
	...     jwt_user.set_user_valid_fields(user_valid_fields)
	...     application = tornado.web.Application([
    ...     (r'/', MainHandler),
    ...     (r'/user_page', MainUserHandler)])
    ...     return application
    >>>
],

Documentation
-------------

View the full docs online at https://jwt_user.readthedocs.io/en/latest/


Tests
-----

You can run tests from the project root after cloning with:

    $ make smoke