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

使用Python中的HTTPServer()搭建一个简单的Web服务器

发布时间:2024-01-11 14:38:07

使用Python中的HTTPServer模块可以方便地搭建一个简单的Web服务器。下面是一个使用例子:

from http.server import HTTPServer, BaseHTTPRequestHandler

# 创建一个自定义的请求处理器类,继承自BaseHTTPRequestHandler
class SimpleHTTPRequestHandler(BaseHTTPRequestHandler):
    # 处理GET请求
    def do_GET(self):
        # 设置响应状态码和响应头
        self.send_response(200)
        self.send_header('Content-type', 'text/html')
        self.end_headers()
        
        # 设置响应内容
        self.wfile.write(b'Hello, World!')
        
# 创建一个HTTP服务器对象,绑定服务器地址和端口,以及自定义的请求处理器类
server = HTTPServer(('localhost', 8000), SimpleHTTPRequestHandler)

# 启动HTTP服务器
server.serve_forever()

在上面的例子中,首先我们创建了一个自定义的请求处理器类SimpleHTTPRequestHandler,这个类是继承自BaseHTTPRequestHandler,所以我们可以重写其中的一些方法来处理不同类型的请求。

在例子中,我们重写了do_GET方法来处理GET请求。在这个方法中,首先设置了响应的状态码为200,然后通过send_header方法设置了响应头的Content-type字段为text/html,然后调用了end_headers方法来发送响应头。

紧接着,我们通过wfile属性获取写入响应的文件对象,调用其write方法来写入响应内容,这里是写入了一个字符串'Hello, World!'

最后我们创建了一个HTTPServer对象,通过传入服务器地址和端口,以及自定义的请求处理器类来创建。然后调用serve_forever方法来启动HTTP服务器,让其一直监听请求并处理。

你可以使用浏览器访问http://localhost:8000来查看效果,它会返回一个包含'Hello, World!'的响应。