PHP 8.3.31
Preview: hooks.py Size: 1.11 KB
/proc/self/root/opt/hc_python/lib64/python3.12/site-packages/requests/hooks.py

"""
requests.hooks
~~~~~~~~~~~~~~

This module provides the capabilities for the Requests hooks system.

Available hooks:

``response``:
    The response generated from a Request.
"""

from __future__ import annotations

from collections.abc import Callable, Iterable
from typing import TYPE_CHECKING, Any

if TYPE_CHECKING:
    from . import _types as _t
    from .models import Response

HOOKS: list[str] = ["response"]


def default_hooks() -> dict[str, list[_t.HookType]]:
    return {event: [] for event in HOOKS}


# TODO: response is the only one


def dispatch_hook(
    key: str,
    hooks: _t.HooksInputType | None,
    hook_data: Response,
    **kwargs: Any,
) -> Response:
    """Dispatches a hook dictionary on a given piece of data."""
    hooks_dict = hooks or {}
    hook_list: Iterable[_t.HookType] | _t.HookType | None = hooks_dict.get(key)
    if hook_list:
        if isinstance(hook_list, Callable):
            hook_list = [hook_list]
        for hook in hook_list:
            _hook_data = hook(hook_data, **kwargs)
            if _hook_data is not None:
                hook_data = _hook_data
    return hook_data

Directory Contents

Dirs: 1 × Files: 20

Name Size Perms Modified Actions
- drwxr-xr-x 2026-06-11 06:30:31
Edit Download
27.41 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
6.98 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
11.95 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
430 B lrw-r--r-- 2026-06-11 06:30:31
Edit Download
2.41 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
21.04 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
4.46 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
4.11 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
1.11 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
40.80 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
904 B lrw-r--r-- 2026-06-11 06:30:31
Edit Download
0 B lrw-r--r-- 2026-06-11 06:30:31
Edit Download
33.45 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
4.25 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
4.04 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
35.47 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
1.51 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
5.70 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
5.78 KB lrw-r--r-- 2026-06-11 06:30:31
Edit Download
435 B lrw-r--r-- 2026-06-11 06:30:31
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).