An elegant RESTful client based on requests.
Project description
Requests-REST: A RESTful client based on requests
This library intends to provide an elegant RESTful client.
Installation
pip install requests-rest
Usage example
base_url = 'https://httpbin.org/'
new_name = 'aponder'
new_email = 'i@aponder.top'
new_user = {
'name': new_name,
'email': new_email,
}
update_user = new_user.copy()
update_user.update({'name': f'new {new_name}'})
# print(resource_user.list().json())
# print(resource_user.create(new_user).json())
# print(resource_user.update(1, new_user).json())
# print(resource_user.patch(1, new_name).json())
# print(resource_user.patch(1, new_email).json())
# print(resource_user.delete(1).json())
resource_client = Client(base_url, debug=True)
Users = resource_client('users')
users_creating = Users.create(new_user)
print(users_creating.response)
users_listing = Users.list(page=1, page_size=10)
print(users_listing.response)
users_detailing = Users.detail(1)
print(users_detailing.response)
users_updating = Users.update(2, update_user)
print(users_updating.response)
users_partial_updating = Users.partial_update(3, update_user)
print(users_partial_updating.response)
users_deleting = Users.delete(4)
print(users_deleting.response)
# extra actions
Users.login = Users.make_plural_action('login')
credentials = {'username': 'root', 'password': 'root'}
print(Users.login(credentials).response)
Users.disable = Users.make_single_action('disable')
print(Users.disable(2).response)
# resource combination
Blogs = resource_client('blogs')
UsersBlogs = users_detailing(Blogs)
new_blog = {'title': 'hello'}
print(UsersBlogs.create(new_blog).response)
print(UsersBlogs.list(page=2, page_size=20).response)
print(UsersBlogs.delete(10).response)
print(UsersBlogs.update(10, new_blog).response)
print(UsersBlogs.partial_update(10, new_blog).response)
print(UsersBlogs.delete(10).response)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
requests-rest-0.3.1.tar.gz
(4.6 kB
view details)
Built Distribution
File details
Details for the file requests-rest-0.3.1.tar.gz
.
File metadata
- Download URL: requests-rest-0.3.1.tar.gz
- Upload date:
- Size: 4.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a898b194d61abddcdbc400c690eb18e1c008aa84dd9cd7da3b7f90c45f0e58ef |
|
MD5 | 26da07fcaf46b0159c9ba2599629085d |
|
BLAKE2b-256 | acd6c468fed6a1b70955b1ffe9602d5ca5d42e09a5edb97b2fd1e2dcc6e1f156 |
File details
Details for the file requests_rest-0.3.1-py2.py3-none-any.whl
.
File metadata
- Download URL: requests_rest-0.3.1-py2.py3-none-any.whl
- Upload date:
- Size: 4.0 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 37fec266fdcc24f02b67191ff0ce79885bf8fdf40e773911891fb23d6b6c62ad |
|
MD5 | 41db555c24161e6f3c72084ec1f0b7b6 |
|
BLAKE2b-256 | 16bdd420491f54c255b9a18bedbf8b066e84b139c34357c3f77d87a5cafba70a |