Python中实现WSGI的框架
小妮浅浅
2021-05-25 09:40:043787浏览 · 0收藏 · 0评论

1、说明
Application类对WSGI又做了一层简单的封装,由于上面说过WSGI函数返回的是一个可以迭代对象,所以需要实现一个__iter__方法,里面控制了客户端的请求路由并且返回不同的输出。
2、实例
from wsgiref.simple_server import make_server
class Application(object):
def __init__(self, environ, start_response):
self.start_response = start_response
self.path = environ['PATH_INFO']
def __iter__(self):
if self.path == '/':
status = '200 OK'
response_headers = [('Content-type', 'text/html')]
self.start_response(status, esponse_headers)
yield '<h1>Hello,World!</h1>'.encode('utf-8')
elif self.path == '/wsgi':
status = '200 OK'
response_headers = [('Content-type', 'text/html')]
self.start_response(status, response_headers)
yield '<h1>Hello,WSGI!</h1>'.encode('utf-8')
else:
status = '404 NOT FOUND'
response_headers = [('Content-type', 'text/html')]
self.start_response(status, response_headers)
yield '<h1>404 NOT FOUND</h1>'.encode('utf-8')
if __name__ == "__main__":
app = make_server('127.0.0.1', 8000, Application)
print('Serving HTTP on port 8000...')
app.serve_forever()以上就是Python中实现WSGI的框架,希望对大家有所帮助。更多Python学习推荐:python教学
本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。
关注公众号,随时随地在线学习