欢迎访问宙启技术站
智能推送

使用Python的from_httplib()函数构建简单的HTTP服务器

发布时间:2024-01-06 15:20:18

from http.server import HTTPServer, BaseHTTPRequestHandler

class SimpleHTTPRequestHandler(BaseHTTPRequestHandler):

    def do_GET(self):

        self.send_response(200)

        self.send_header('Content-type', 'text/html')

        self.end_headers()

        self.wfile.write(b"Hello, world!")

def run(server_class=HTTPServer, handler_class=SimpleHTTPRequestHandler, port=8000):

    server_address = ('', port)

    httpd = server_class(server_address, handler_class)

    print(f"Server running on port {port}")

    httpd.serve_forever()

run()

    

    

使用Python的from http.server import HTTPServer, BaseHTTPRequestHandler 导入相关模块。

下面我们定义了一个SimpleHTTPRequestHandler类,继承自BaseHTTPRequestHandler类。在do_GET方法中,我们构造了一个简单的HTTP响应,设置状态码为200,设置Content-Type为text/html,并返回一个Hello, world!的字符串。

接下来,我们定义了一个run函数,用于启动HTTP服务器。默认使用HTTPServerSimpleHTTPRequestHandler,默认端口为8000。我们通过调用server_class的构造函数创建一个实例,并且将server_addresshandler_class作为参数传递进去。然后,我们通过serve_forever方法启动HTTP服务器,并且让HTTP服务器一直运行。

最后,我们调用run函数启动HTTP服务器,这将使得服务器在本地的8000端口上运行。

你可以在浏览器中访问http://localhost:8000,就可以看到服务器返回的Hello, world!了。

这是一个简单的例子,你可以根据自己的需求来定制SimpleHTTPRequestHandler类的do_GET方法,以实现更复杂的功能。