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

通过Python的SimpleHTTPRequestHandler()在本地搭建一个简易的Web服务器

发布时间:2023-12-17 12:50:34

Python提供了一个简单的内建模块http.server,其中包含一个SimpleHTTPRequestHandler类,可以用于在本地搭建一个简易的Web服务器。以下是一个使用例子,步骤如下:

1. 导入必要的模块:

import http.server
import socketserver

2. 定义web服务器的端口号:

PORT = 8000

3. 创建一个继承自http.server.SimpleHTTPRequestHandler的新类,并覆盖do_GET方法:

class MyHttpRequestHandler(http.server.SimpleHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header('Content-type', 'text/html')
        self.end_headers()
        self.wfile.write(b"Hello, world!")  # 在浏览器中显示的内容

4. 创建一个TCPServer对象,并将这个新类作为处理程序:

with socketserver.TCPServer(("", PORT), MyHttpRequestHandler) as httpd:
    print("serving at port", PORT)
    httpd.serve_forever()

5. 运行这个脚本后,打开浏览器并访问http://localhost:8000,就能看到浏览器显示Hello, world!的内容。

完整的示例代码如下:

import http.server
import socketserver

PORT = 8000

class MyHttpRequestHandler(http.server.SimpleHTTPRequestHandler):
    def do_GET(self):
        self.send_response(200)
        self.send_header('Content-type', 'text/html')
        self.end_headers()
        self.wfile.write(b"Hello, world!")

with socketserver.TCPServer(("", PORT), MyHttpRequestHandler) as httpd:
    print("serving at port", PORT)
    httpd.serve_forever()

运行脚本后,在浏览器中访问http://localhost:8000,即可见到浏览器显示Hello, world!的内容。此时,已经成功在本地搭建了一个简易的Web服务器。