【Python】Web服务器网关接口(WSGI)的简介及wsgiref模块

WSGI

Web服务器网关接口(Python Web Server Gateway Interface,缩写为WSGI)是为Python语言定义的Web服务器和Web应用程序或框架之间的一种简单而通用的接口。

WSGI有两方:「服务器」或「网关」一方,以及「应用程序」或「应用框架」一方。服务方调用应用方,提供环境信息,以及一个回调函数(提供给应用程序用来将消息头传递给服务器方),并接收Web内容作为返回值。

在Python中有一个WSGI模块——wsgiref。它是用纯Python编写的WSGI服务器的参考实现。所谓「参考实现」是指该实现完全符合WSGI标准,但是不考虑任何运行效率,仅供开发和测试使用。

下面附上一份学习WSGI的代码清单,可以运行在Python 2.7以及3.5。

代码清单

# coding=utf-8

from wsgiref.simple_server import make_server, demo_app

def application(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/html')])
    return [('

Hello, %s!

'
% (environ['PATH_INFO'][1:] or 'web')).encode('utf-8')] if __name__ == '__main__': #httpd = make_server('', 8000, demo_app) httpd = make_server(host='', port=8000, app=application) print("Serving HTTP on port 8000...") httpd.serve_forever()

你可能感兴趣的:(Python)