003---wsgi和wsgiref模块

WSGI:

  全称:Web Server Gatway Interface ,web服务网关接口,独立的,与django无关,他们俩只是遵循一个约定,是一个协议。

wsgiref模块:

  实现了WSGI协议的一个模块,本质上是一个socket服务端。对请求进行解析,对响应进行封装,生产环境不用它,测试和开发阶段用。

 1 from wsgiref.simple_server import make_server
 2 
 3 def application(environ, start_response):
 4     #  按着http协议解析数据  environ
 5     #  按着http协议组装数据 start_response
 6     # print(environ,type(environ))  # 'PATH_INFO': '/admin'  类型:dict
 7     url = environ.get("PATH_INFO")
 8     start_response('200 ok', [('content-type', 'text/html')])
 9     data = ''
10     if url == '/index':
11         with open(r'00、jd-server\index.html','r',encoding='utf-8')as f1:
12             data = f1.read()
13     elif url == '/login':
14         with open(r'00、jd-server\login.html','r',encoding='utf-8')as f2:
15             data = f2.read()
16     else:
17         return [b'404']
18 
19     return [data]
20 httped = make_server('', 8800, application)  # 封装了socket  bind  linsten
21 
22 httped.serve_forever()  # 等待链接

 

posted @ 2018-10-30 17:57  爬呀爬Xjm  阅读(165)  评论(0编辑  收藏  举报