Python 编写WSGI应用

WSGI的全称是Web Server Gateway Interface,翻译过来就是Web服务器网关接口。具体的来说,WSGI是一个规范,定义了Web服务器如何与Python应用程序进行交互,使得使用Python写的Web应用程序可以和Web服务器对接起来。

WSGI协议分为两部分,分别为WSGI Server和WSGI Application,WSGI Server负责接受客户端请求、解析请求、并按照协议规范将请求转发给WSGI Application,同时负责接受WSGI Application的响应并发送给客户端;WSGI Application负责接受由WSGI Server发送过来的请求,实现业务处理逻辑,并将标准的响应发回给WSGI Server。

WSGI Application需要满足三个条件:

  1. 应用程序需要是一个可调用的对象
  2. 可调用对象接收两个参数
  3. 可调用对象要返回一个值,这个值是可迭代的
from http import HTTPStatus
from wsgiref.simple_server import make_server
def application(environ, start_response):
status = "{status.value} {status.phrase}".format(status=HTTPStatus.OK)
headers = [('Content-Type', 'text/plain')]
start_response(status,headers)
return ["hello world".encode('utf-8')]
if __name__ == '__main__':
httpd = make_server('', 8080, application)
print('server running on 0.0.0.0:8080')
httpd.serve_forever()
posted @   Peterer~王勇  阅读(192)  评论(0编辑  收藏  举报
编辑推荐:
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
阅读排行:
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· Browser-use 详细介绍&使用文档
· 软件产品开发中常见的10个问题及处理方法
点击右上角即可分享
微信分享提示