21.22. http.server - Http servers
这个模块定义了用以实现HTTP servers(Web servers)的类。
HTTPServer是一个socketserver.TCPServer的子类。这个类创建HTTP socket并监听,将请求分发给handler。创建并运行一个server的代码是下面这样的:
def run(server_class=HTTPServer, handler_class=BaseHTTPRequestHandler):
server_address = ('', 8000)
httpd = server_class(server_address, handler_class)
httpd.serve_forever()
class http.server.HTTPServer(server_address, RequestHandlerClass)
这个类基于TCPServer实现,将server地址以名为server_name和server_port的实例变量存储。通过handler的名为server实例变量,这个server可以被handler访问。
HTTPServer 初始化时必须被提供一个RequestHandlerClass。这个模块为HTTPServer提供了三个不同的变体:
class http.server.BaseHTTPRequestHandler(