Build and send a request. Equivalent to: ```python request = client.build_request(...) response = await client.send(request, ...) ``` See `AsyncClient.build_request()`, `AsyncClient.send()` and [Merging of configuration][0] for how
(
self,
method: str,
url: URL | str,
*,
content: RequestContent | None = None,
data: RequestData | None = None,
files: RequestFiles | None = None,
json: typing.Any | None = None,
params: QueryParamTypes | None = None,
headers: HeaderTypes | None = None,
cookies: CookieTypes | None = None,
auth: AuthTypes | UseClientDefault | None = USE_CLIENT_DEFAULT,
follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT,
timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT,
extensions: RequestExtensions | None = None,
)
| 1483 | return self._transport |
| 1484 | |
| 1485 | async def request( |
| 1486 | self, |
| 1487 | method: str, |
| 1488 | url: URL | str, |
| 1489 | *, |
| 1490 | content: RequestContent | None = None, |
| 1491 | data: RequestData | None = None, |
| 1492 | files: RequestFiles | None = None, |
| 1493 | json: typing.Any | None = None, |
| 1494 | params: QueryParamTypes | None = None, |
| 1495 | headers: HeaderTypes | None = None, |
| 1496 | cookies: CookieTypes | None = None, |
| 1497 | auth: AuthTypes | UseClientDefault | None = USE_CLIENT_DEFAULT, |
| 1498 | follow_redirects: bool | UseClientDefault = USE_CLIENT_DEFAULT, |
| 1499 | timeout: TimeoutTypes | UseClientDefault = USE_CLIENT_DEFAULT, |
| 1500 | extensions: RequestExtensions | None = None, |
| 1501 | ) -> Response: |
| 1502 | """ |
| 1503 | Build and send a request. |
| 1504 | |
| 1505 | Equivalent to: |
| 1506 | |
| 1507 | ```python |
| 1508 | request = client.build_request(...) |
| 1509 | response = await client.send(request, ...) |
| 1510 | ``` |
| 1511 | |
| 1512 | See `AsyncClient.build_request()`, `AsyncClient.send()` |
| 1513 | and [Merging of configuration][0] for how the various parameters |
| 1514 | are merged with client-level configuration. |
| 1515 | |
| 1516 | [0]: /advanced/clients/#merging-of-configuration |
| 1517 | """ |
| 1518 | |
| 1519 | if cookies is not None: # pragma: no cover |
| 1520 | message = ( |
| 1521 | "Setting per-request cookies=<...> is being deprecated, because " |
| 1522 | "the expected behaviour on cookie persistence is ambiguous. Set " |
| 1523 | "cookies directly on the client instance instead." |
| 1524 | ) |
| 1525 | warnings.warn(message, DeprecationWarning, stacklevel=2) |
| 1526 | |
| 1527 | request = self.build_request( |
| 1528 | method=method, |
| 1529 | url=url, |
| 1530 | content=content, |
| 1531 | data=data, |
| 1532 | files=files, |
| 1533 | json=json, |
| 1534 | params=params, |
| 1535 | headers=headers, |
| 1536 | cookies=cookies, |
| 1537 | timeout=timeout, |
| 1538 | extensions=extensions, |
| 1539 | ) |
| 1540 | return await self.send(request, auth=auth, follow_redirects=follow_redirects) |
| 1541 | |
| 1542 | @asynccontextmanager |