Skip to main content

No project description provided

Project description

AIOHTTP OAuth Client – OAuth support for Aiohttp/Asyncio.

Build Status http://img.shields.io/pypi/v/aioauth-client.svg?style=flat-square http://img.shields.io/pypi/dm/aioauth-client.svg?style=flat-square

Requirements

  • python >= 3.5

Installation

AIOHTTP OAuth Client should be installed using pip:

pip install aioauth-client

Usage

# OAuth1
from aioauth_client import TwitterClient

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

request_token, request_token_secret, _ = yield from 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, oauth_token_secret, _ = yield from twitter.get_access_token(oauth_verifier)

# 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 = yield from twitter.request('GET', 'statuses/home_timeline.json')
content = yield from timeline.read()
print(content)
# 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, _ = yield from 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 = yield from github.request('GET', 'user')
user_info = yield from response.json()

Example

Run example with command:

make run

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

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

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

License

Licensed under a MIT license.

If you wish to express your appreciation for the role, you are welcome to send a postcard to:

Kirill Klenov
pos. Severny d. 8 kv. 3
MO, Istra, 143500
Russia

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aioauth-client-0.15.0.tar.gz (13.0 kB view details)

Uploaded Source

Built Distribution

aioauth_client-0.15.0-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file aioauth-client-0.15.0.tar.gz.

File metadata

  • Download URL: aioauth-client-0.15.0.tar.gz
  • Upload date:
  • Size: 13.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.9.1 pkginfo/1.4.1 requests/2.18.4 setuptools/38.5.1 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/3.6.3

File hashes

Hashes for aioauth-client-0.15.0.tar.gz
Algorithm Hash digest
SHA256 dc84b715804d8687036fecaced29e89a348c82cf16728875dc60e3286c1b45c2
MD5 74174ac9c37e6b19bbd46a5693d3c921
BLAKE2b-256 7bcdf1f6c2bc983901af9463664c8a318ca6b92346ef0009c349c24df3a972a4

See more details on using hashes here.

File details

Details for the file aioauth_client-0.15.0-py3-none-any.whl.

File metadata

  • Download URL: aioauth_client-0.15.0-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.9.1 pkginfo/1.4.1 requests/2.18.4 setuptools/38.5.1 requests-toolbelt/0.8.0 tqdm/4.19.5 CPython/3.6.3

File hashes

Hashes for aioauth_client-0.15.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ae0bc8edd0a320502eeb24da86aca489fd909631a4d49f73b70955b3006dc037
MD5 2781b0d3d779ee23a91a4b110d966199
BLAKE2b-256 8b1231dd638637aae2e4ffc3f5c776c014038707fdec3a9c02ec688aeed6ef90

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page