如何使用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()函数来处理更复杂的请求和生成动态内容。
