Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
587c98c8
Commit
587c98c8
authored
Mar 17, 2002
by
Martin v. Löwis
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Patch #430706: Persistent connections in BaseHTTPServer.
parent
8ec03e05
Changes
4
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
145 additions
and
40 deletions
+145
-40
Doc/lib/libbasehttp.tex
Doc/lib/libbasehttp.tex
+16
-6
Lib/BaseHTTPServer.py
Lib/BaseHTTPServer.py
+123
-34
Lib/SimpleHTTPServer.py
Lib/SimpleHTTPServer.py
+3
-0
Misc/NEWS
Misc/NEWS
+3
-0
No files found.
Doc/lib/libbasehttp.tex
View file @
587c98c8
...
...
@@ -123,9 +123,12 @@ class variable.
\end{memberdesc}
\begin{memberdesc}
{
protocol
_
version
}
This specifies the HTTP protocol version used in responses.
Typically, this should not be overridden. Defaults to
\code
{
'HTTP/1.0'
}
.
This specifies the HTTP protocol version used in responses. If set
to
\code
{
'HTTP/1.1'
}
, the server will permit HTTP persistent
connections; however, your server
\emph
{
must
}
then include an
accurate
\code
{
Content-Length
}
header (using
\method
{
send
_
header()
}
)
in all of its responses to clients. For backwards compatibility,
the setting defaults to
\code
{
'HTTP/1.0'
}
.
\end{memberdesc}
\begin{memberdesc}
{
MessageClass
}
...
...
@@ -148,9 +151,16 @@ error response, and \var{longmessage} as the \var{explain} key
A
\class
{
BaseHTTPRequestHandler
}
instance has the following methods:
\begin{methoddesc}
{
handle
}{}
Overrides the superclass'
\method
{
handle()
}
method to provide the
specific handler behavior. This method will parse and dispatch
the request to the appropriate
\method
{
do
_
*()
}
method.
Calls
\method
{
handle
_
one
_
request()
}
once (or, if persistent connections
are enabled, multiple times) to handle incoming HTTP requests.
You should never need to override it; instead, implement appropriate
\method
{
do
_
*()
}
methods.
\end{methoddesc}
\begin{methoddesc}
{
handle
_
one
_
request
}{}
This method will parse and dispatch
the request to the appropriate
\method
{
do
_
*()
}
method. You should
never need to override it.
\end{methoddesc}
\begin{methoddesc}
{
send
_
error
}{
code
\optional
{
, message
}}
...
...
Lib/BaseHTTPServer.py
View file @
587c98c8
This diff is collapsed.
Click to expand it.
Lib/SimpleHTTPServer.py
View file @
587c98c8
...
...
@@ -82,6 +82,7 @@ class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
return
None
self
.
send_response
(
200
)
self
.
send_header
(
"Content-type"
,
ctype
)
self
.
send_header
(
"Content-Length"
,
str
(
os
.
fstat
(
f
.
fileno
())[
6
]))
self
.
end_headers
()
return
f
...
...
@@ -115,9 +116,11 @@ class SimpleHTTPRequestHandler(BaseHTTPServer.BaseHTTPRequestHandler):
# Note: a link to a directory displays with @ and links with /
f
.
write
(
'<li><a href="%s">%s</a>
\
n
'
%
(
linkname
,
displayname
))
f
.
write
(
"</ul>
\
n
<hr>
\
n
"
)
length
=
f
.
tell
()
f
.
seek
(
0
)
self
.
send_response
(
200
)
self
.
send_header
(
"Content-type"
,
"text/html"
)
self
.
send_header
(
"Content-Length"
,
str
(
length
))
self
.
end_headers
()
return
f
...
...
Misc/NEWS
View file @
587c98c8
...
...
@@ -44,6 +44,9 @@ Extension modules
Library
- The BaseHTTPServer implements now optionally HTTP/1.1 persistent
connections.
- socket module: the SSL support was broken out of the main
_socket module C helper and placed into a new _ssl helper
which now gets imported by socket.py if available and working.
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment