Skip to main content

A lightweight library for making asynchronous HTTP requests.

Project description

asyncreq

asyncreq is a lightweight Python library for making asynchronous HTTP requests using aiohttp. This library provides two convenient methods for interacting with RESTful APIs in an asynchronous manner.

Installation

To install the library, use the following pip command:

pip install asyncreq

Usage

make_request

The make_request method allows you to make asynchronous HTTP requests with flexible options. Here's an example of how to use it:

from asyncreq import make_request

async def example_usage():
    url = "https://api.example.com/resource"
    method = "GET"
    headers = {"Authorization": "Bearer YOUR_ACCESS_TOKEN"}
    
    try:
        response_data, status_code, response_headers = await make_request(
            url=url,
            method=method,
            headers=headers,
            # Add other optional parameters as needed
        )
        print(f"Response Data: {response_data}")
        print(f"Status Code: {status_code}")
        print(f"Response Headers: {response_headers}")
    except Exception as e:
        print(f"An error occurred: {e}")

request

The request method is a simplified wrapper around make_request with added error handling. It raises appropriate exceptions for common HTTP-related errors:

from asyncreq import request, HTTPException

async def example_usage():
    url = "https://api.example.com/resource"
    method = "GET"
    headers = {"Authorization": "Bearer YOUR_ACCESS_TOKEN"}
    
    try:
        response_data, status_code, response_headers = await request(
            url=url,
            method=method,
            headers=headers,
            # Add other optional parameters as needed
        )
        print(f"Response Data: {response_data}")
        print(f"Status Code: {status_code}")
        print(f"Response Headers: {response_headers}")
    except HTTPException as e:
        print(f"An HTTP error occurred: {e}")

Note: make sure to use await as demonstrated in the examples above.

Dependencies

  • aiohttp: Asynchronous HTTP client/server framework.

Contributing

If you find any issues or have suggestions for improvements, please feel free to open an issue or create a pull request on the Git repository.

License

This project is licensed under the MIT license.

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

asyncreq-0.0.6.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

asyncreq-0.0.6-py3-none-any.whl (3.7 kB view details)

Uploaded Python 3

File details

Details for the file asyncreq-0.0.6.tar.gz.

File metadata

  • Download URL: asyncreq-0.0.6.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for asyncreq-0.0.6.tar.gz
Algorithm Hash digest
SHA256 964956409e92cdbf46f624078e4f728fb9e29fd98242f6160eb7e9f19e9ee525
MD5 f1c3b8b7131af2f5f0b438e823a21fc6
BLAKE2b-256 e33b8c9007ee7c8c37db31bfc8fc99947a99d2ee7cdc25247c1b85303930e1d3

See more details on using hashes here.

File details

Details for the file asyncreq-0.0.6-py3-none-any.whl.

File metadata

  • Download URL: asyncreq-0.0.6-py3-none-any.whl
  • Upload date:
  • Size: 3.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for asyncreq-0.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 9a805614209ca80276c3c5380a3dbeb93a58d8af7165632ff243b09570dc51e0
MD5 e9114c3064cd407dda8e0116d97b6c96
BLAKE2b-256 d969e5115ac47efded6f01958293fa43384d9ec3601dd7a5fbe7b1ee3d1785e9

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