Files
requests3/requests/core/api.py
T
kennethreitz c9a188add2 requests core
Signed-off-by: Kenneth Reitz <me@kennethreitz.org>
2018-03-16 18:16:55 -04:00

52 lines
1.0 KiB
Python

import trio
from .http_manager import AsyncPoolManager, PoolManager
from .http_manager._backends import TrioBackend
from . import http_manager
async def request(
method,
url,
timeout,
body=None,
headers=None,
preload_content=False,
pool=None,
**kwargs
):
"""Returns a Response object, to be awaited."""
if not pool:
pool = AsyncPoolManager(backend=TrioBackend())
return await pool.urlopen(
method=method,
url=url,
headers=headers,
preload_content=preload_content,
**kwargs
)
def blocking_request(
method,
url,
timeout,
body=None,
headers=None,
preload_content=False,
pool=None,
**kwargs
):
"""Returns a Response object."""
if not pool:
pool = PoolManager()
with pool as http:
r = http.urlopen(
method=method,
url=url,
headers=headers,
preload_content=preload_content,
**kwargs
)
return r