summaryrefslogtreecommitdiffstats
path: root/Doc/library
diff options
context:
space:
mode:
authorAshwin Ramaswami <aramaswamis@gmail.com>2019-01-18 15:49:16 (GMT)
committerBrian Curtin <brian@python.org>2019-01-18 15:49:16 (GMT)
commit478f8291327a3e3ab17b5857699565df43a9e952 (patch)
treea75fa77bf1a977d6663a6a81c8248706e4baf983 /Doc/library
parent34de2d312b3687994ddbc29adb66e88f672034c7 (diff)
downloadcpython-478f8291327a3e3ab17b5857699565df43a9e952.zip
cpython-478f8291327a3e3ab17b5857699565df43a9e952.tar.gz
cpython-478f8291327a3e3ab17b5857699565df43a9e952.tar.bz2
bpo-21257: document http.client.parse_headers (GH-11443)
Document http.client.parse_headers
Diffstat (limited to 'Doc/library')
-rw-r--r--Doc/library/http.client.rst19
1 files changed, 19 insertions, 0 deletions
diff --git a/Doc/library/http.client.rst b/Doc/library/http.client.rst
index 3408c10..beaa720 100644
--- a/Doc/library/http.client.rst
+++ b/Doc/library/http.client.rst
@@ -115,6 +115,25 @@ The module provides the following classes:
The *strict* parameter was removed. HTTP 0.9 style "Simple Responses" are
no longer supported.
+This module provides the following function:
+
+.. function:: parse_headers(fp)
+
+ Parse the headers from a file pointer *fp* representing a HTTP
+ request/response. The file has to be a :class:`BufferedIOBase` reader
+ (i.e. not text) and must provide a valid :rfc:`2822` style header.
+
+ This function returns an instance of :class:`http.client.HTTPMessage`
+ that holds the header fields, but no payload
+ (the same as :attr:`HTTPResponse.msg`
+ and :attr:`http.server.BaseHTTPRequestHandler.headers`).
+ After returning, the file pointer *fp* is ready to read the HTTP body.
+
+ .. note::
+ :meth:`parse_headers` does not parse the start-line of a HTTP message;
+ it only parses the ``Name: value`` lines. The file has to be ready to
+ read these field lines, so the first line should already be consumed
+ before calling the function.
The following exceptions are raised as appropriate: