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

如何使用Python的make_server()创建一个简单的HTTP服务器

发布时间:2023-12-24 07:24:01

Python的make_server()函数是用来创建一个简单的HTTP服务器的。它位于标准库模块wsgiref中。下面是一个使用make_server()创建HTTP服务器的例子:

from wsgiref.simple_server import make_server

# 定义一个简单的请求处理函数
def application(environ, start_response):
    # 设置HTTP响应头
    status = '200 OK'
    headers = [('Content-type', 'text/html')]
    start_response(status, headers)

    # 返回响应内容
    return [b"Hello, World!"]

# 创建HTTP服务器,绑定主机和端口
host = 'localhost'
port = 8000
httpd = make_server(host, port, application)

# 开始监听请求并对其进行处理
print(f"Serving HTTP on {host} port {port}...")
httpd.serve_forever()

以上代码创建了一个简单的HTTP服务器,它监听本地主机(localhost)的8000端口。当有请求到达时,服务器调用application()函数来处理请求。

application()函数是一个WSGI应用程序,它接收两个参数:environ表示请求的环境变量,start_response是一个回调函数,用于设置HTTP响应的状态和头部。

application()函数中,我们设置了HTTP响应头,然后返回一个字节数组作为响应内容。

最后,我们使用httpd.serve_forever()开始监听请求并对其进行处理。

要运行以上代码,可以将其保存为一个Python文件(例如server.py),然后在命令行中运行python server.py

然后,您可以在浏览器中访问http://localhost:8000/,将会看到“Hello, World!”的响应。

这只是一个非常简单的例子,您可以根据需要进一步扩展application()函数来处理更复杂的请求和生成动态内容。