一段话理解 WSGI

网上很多文章都详细说明了WSGI是什么,比如https://my.oschina.net/leejun2005/blog/486771 就说得很具体:

Server 和 Application 之间怎么通信,就是 WSGI 的功能。它规定了 app(environ, start_response) 的接口,server 会调用 application,并传给它两个参数:environ 包含了请求的所有信息,start_response 是 application 处理完之后需要调用的函数,参数是状态码、响应头部还有错误信息。

仅仅看这段话,初学者任然很难理解。但结合service和app的工作,就能很容易理解什么是WSGI了:
service会绑定、监听特定接口,处理tcp请求,对其中的http请求解析,将解析得出的method、path等信息保存至类型为dict的变量environ里,然后调用 app(environ, start_response) 。start_response作为一个函数提供给app返回response的head信息。app(environ, start_response) 的返回值则为app处理完的response内容。接下来service将response内容和head信息生成http response返回给请求方。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容