一、考点聚焦
WSGI
;常见web
框架
1.什么是WSGI
?
2.常用的 Python Web
框架 Django
/Flask
/Tornado
对比
3.Web
框架的组成(淡化框架、加强基础)
二、什么是WSGI
?
为什么需要它?我们经常使用uwsgi
/gunicorn
来部署Django
/Flask
应用,为什么Flask
/Django
都可以运行在gunicorn
之上?
1.Python Web Server Gateway Interface(pep3333)
2.解决 Python Web Server
乱象 mod_python
, CGI
, FastCGI
等
3.描述了Web Server(Gunicorn/uWSGI)
如何与Web
框架(Flask
/Django
)交互,Web
框架如何处理请求
def application(environ, start_response)
application
就是WSGI app
,一个可调用对象- 参数:
environ
:一个包含WSGI
环境信息的字典,由WSGI
服务器提供,常见的key
有PATH_INFO
,QUERY_STRING
等start_response
:生成WSGI
响应的回调函数,接收两个参数,status
和headers
- 函数返回响应体的迭代器
我们编写一个兼容 WSGI
的web
小应用:
def myapp