MCPcopy
hub / github.com/encode/httpx / __init__

Method __init__

httpx/_models.py:516–569  ·  httpx/_models.py::Response.__init__
(
        self,
        status_code: int,
        *,
        headers: HeaderTypes | None = None,
        content: ResponseContent | None = None,
        text: str | None = None,
        html: str | None = None,
        json: typing.Any = None,
        stream: SyncByteStream | AsyncByteStream | None = None,
        request: Request | None = None,
        extensions: ResponseExtensions | None = None,
        history: list[Response] | None = None,
        default_encoding: str | typing.Callable[[bytes], str] = "utf-8",
    )

Source from the content-addressed store, hash-verified

514
515class Response:
516 def __init__(
517 self,
518 status_code: int,
519 *,
520 headers: HeaderTypes | None = None,
521 content: ResponseContent | None = None,
522 text: str | None = None,
523 html: str | None = None,
524 json: typing.Any = None,
525 stream: SyncByteStream | AsyncByteStream | None = None,
526 request: Request | None = None,
527 extensions: ResponseExtensions | None = None,
528 history: list[Response] | None = None,
529 default_encoding: str | typing.Callable[[bytes], str] = class="st">"utf-8",
530 ) -> None:
531 self.status_code = status_code
532 self.headers = Headers(headers)
533
534 self._request: Request | None = request
535
536 class="cm"># When follow_redirects=False and a redirect is received,
537 class="cm"># the client will set `response.next_request`.
538 self.next_request: Request | None = None
539
540 self.extensions = {} if extensions is None else dict(extensions)
541 self.history = [] if history is None else list(history)
542
543 self.is_closed = False
544 self.is_stream_consumed = False
545
546 self.default_encoding = default_encoding
547
548 if stream is None:
549 headers, stream = encode_response(content, text, html, json)
550 self._prepare(headers)
551 self.stream = stream
552 if isinstance(stream, ByteStream):
553 class="cm"># Load the response body, except for streaming content.
554 self.read()
555 else:
556 class="cm"># There's an important distinction between `Response(content=...)`,
557 class="cm"># and `Response(stream=...)`.
558 class="cm">#
559 class="cm"># Using `content=...` implies automatically populated content headers,
560 class="cm"># of either `Content-Length: ...` or `Transfer-Encoding: chunked`.
561 class="cm">#
562 class="cm"># Using `stream=...` will not automatically include any content headers.
563 class="cm">#
564 class="cm"># As an end-user you donclass="st">'t really need `stream=...`. It's only
565 class="cm"># useful when creating response instances having received a stream
566 class="cm"># from the transport API.
567 self.stream = stream
568
569 self._num_bytes_downloaded = 0
570
571 def _prepare(self, default_headers: dict[str, str]) -> None:
572 for key, value in default_headers.items():

Callers

nothing calls this directly

Calls 4

_prepareMethod · 0.95
readMethod · 0.95
HeadersClass · 0.85
encode_responseFunction · 0.85

Tested by

no test coverage detected