Python中BaseHTTPServer.HTTPServer__init__()方法的用法详解
发布时间:2023-12-23 01:48:47
BaseHTTPServer.HTTPServer类是一个基于套接字的并发Web服务器。它是Python标准库中的一个模块,用于创建一个简单的HTTP服务器。
HTTPServer的__init__方法用于初始化一个HTTP服务器对象,其基本语法如下:
__init__(server_address, RequestHandlerClass)
参数说明:
- server_address: 服务器的主机地址和端口号,通常是一个元组(host, port)。
- RequestHandlerClass: 处理请求的类,默认为BaseHTTPServer.BaseHTTPRequestHandler。
下面是一个使用例子:
import BaseHTTPServer
class MyHandler(BaseHTTPServer.BaseHTTPRequestHandler):
def do_GET(self):
self.send_response(200)
self.send_header('Content-type', 'text/plain')
self.end_headers()
self.wfile.write('Hello, World!')
if __name__ == '__main__':
server_address = ('', 8000)
httpd = BaseHTTPServer.HTTPServer(server_address, MyHandler)
httpd.serve_forever()
在上面的例子中,我们创建了一个自定义的请求处理类MyHandler,并实现了do_GET方法来处理GET请求。当收到GET请求时,服务器会向客户端返回一个“Hello, World!”的响应。
然后,我们创建了一个HTTPServer对象,并将服务器地址和自定义的请求处理类传入__init__方法。最后,调用serve_forever方法启动服务器并一直运行。
通过以上例子,我们可以看到HTTPServer中的__init__方法的基本用法。它用于初始化一个HTTP服务器对象,并指定服务地址和请求处理类。
