Socket
Socket
Sign inDemoInstall

aioauth-client

Package Overview
Dependencies
1
Maintainers
1
Alerts
File Explorer

Install Socket

Detect and block malicious and high-risk dependencies

Install

    aioauth-client

OAuth support for Asyncio/Trio libraries


Maintainers
1

Readme

AIOAuth Client ##############

.. _description:

AIOAuth Client -- OAuth support for Asyncio_ / Trio_ libraries.

.. _badges:

.. image:: https://github.com/klen/aioauth-client/workflows/tests/badge.svg :target: https://github.com/klen/aioauth-client/actions :alt: Tests Status

.. image:: https://img.shields.io/pypi/v/aioauth-client :target: https://pypi.org/project/aioauth-client/ :alt: PYPI Version

.. image:: https://img.shields.io/pypi/pyversions/aioauth-client :target: https://pypi.org/project/aioauth-client/ :alt: Python Versions

.. _contents:

.. contents::

.. _requirements:

Requirements

  • python >= 3.8

.. _installation:

Installation

AIOAuth Client should be installed using pip: ::

pip install aioauth-client

.. _usage:

Usage

.. code:: python

# OAuth2
from aioauth_client import GithubClient

github = GithubClient(
    client_id='b6281b6fe88fa4c313e6',
    client_secret='21ff23d9f1cad775daee6a38d230e1ee05b04f7c',
)

authorize_url = github.get_authorize_url(scope="user:email")

# ...
# Reload client to authorize_url and get code
# ...

otoken, _ = await github.get_access_token(code)

# Save the token for later use

# ...

github = GithubClient(
    client_id='b6281b6fe88fa4c313e6',
    client_secret='21ff23d9f1cad775daee6a38d230e1ee05b04f7c',
    access_token=otoken,
)

# Or you can use this if you have initilized client already
# github.access_token = otoken

response = await github.request('GET', 'user')
user_info = await response.json()

.. code:: python

# OAuth1
from aioauth_client import TwitterClient

twitter = TwitterClient(
    consumer_key='J8MoJG4bQ9gcmGh8H7XhMg',
    consumer_secret='7WAscbSy65GmiVOvMU5EBYn5z80fhQkcFWSLMJJu4',
)

request_token, _ = await twitter.get_request_token()

authorize_url = twitter.get_authorize_url(request_token)
print("Open",authorize_url,"in a browser")
# ...
# Reload client to authorize_url and get oauth_verifier
# ...
print("PIN code:")
oauth_verifier = input()
oauth_token, data = await twitter.get_access_token(oauth_verifier)
oauth_token_secret = data.get('oauth_token_secret')

# Save the tokens for later use

# ...

twitter = TwitterClient(
    consumer_key='J8MoJG4bQ9gcmGh8H7XhMg',
    consumer_secret='7WAscbSy65GmiVOvMU5EBYn5z80fhQkcFWSLMJJu4',
    oauth_token=oauth_token,
    oauth_token_secret=oauth_token_secret,
)

# Or you can use this if you have initilized client already
# twitter.access_token = oauth_token
# twitter.access_token_secret = oauth_token_secret

timeline = await twitter.request('GET', 'statuses/home_timeline.json')
content = await timeline.read()
print(content)

Example

Run example with command: ::

make example

Open http://localhost:8080 in your browser.

.. _bugtracker:

Bug tracker

If you have any suggestions, bug reports or annoyances please report them to the issue tracker at https://github.com/klen/aioauth-client/issues

.. _contributing:

Contributing

Development of AIOAuth Client happens at: https://github.com/klen/aioauth-client

.. _license:

License

Licensed under a MIT license_.

.. _links:

.. _klen: https://github.com/klen .. _Asyncio: https://docs.python.org/3/library/asyncio.html .. _Trio: https://trio.readthedocs.io/en/stable/

.. _MIT license: http://opensource.org/licenses/MIT

Keywords

FAQs


Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc