当我使用HTTP/1.1和SimpleHTTPRequestHandler时,加载一个拉取其他资源的页面在第二个资源之后会卡住。
这里有一个小的复现代码:
from SimpleHTTPServer import SimpleHTTPRequestHandler
from BaseHTTPServer import HTTPServer
class MyRequestHandler(SimpleHTTPRequestHandler):
#protocol_version = "HTTP/1.0" # works
protocol_version = "HTTP/1.1" # hangs
server = HTTPServer(("localhost", 7080), MyRequestHandler)
server.serve_forever()
使用上述服务器,当浏览器尝试加载b.png
时,以下HTML会挂起:
<html>
<body>
<img src="a.png">
<img src="b.png">
</body>
</html>
HTTP/1.1能否与SimpleHTTPServer模块一起使用,如果可以,应该如何使用?请注意,将ForkingMixIn或ThreadingMixIn添加到服务器将允许事情继续进行,但似乎没有这些mixin也应该是可能的。