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.3

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,
)

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,
)

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

Example

Run example with command:

make run

Open http://fuf.me: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.9.0.tar.gz (12.1 kB view details)

Uploaded Source

Built Distribution

aioauth_client-0.9.0-py2.py3-none-any.whl (11.5 kB view details)

Uploaded Python 2 Python 3

File details

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

File metadata

File hashes

Hashes for aioauth-client-0.9.0.tar.gz
Algorithm Hash digest
SHA256 c42a98b9a2526e9c491d9d332b2df2e21ca28b8263cfcc5c1e1cf64254d84434
MD5 6a56d9b9de79c236c34d097b48259de4
BLAKE2b-256 99a7223c0f6ea45027a0d4667ebde172a76aaf8bb51cfe89ead477ad4db6cf04

See more details on using hashes here.

File details

Details for the file aioauth_client-0.9.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for aioauth_client-0.9.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 7ba17e14688058d96541dcb0a63c898be76ce4a6da8a5b110ed69cc76e7e8665
MD5 4baac3b5b08ab8092254ddf5db03f2b3
BLAKE2b-256 68765cef93faa4c453287f9db640c702424f4b67a65a8c57e88e1dc42558134b

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