WSGI接口

官方文档:WSGI

什么是WSGI

        WSGI---Web Service Gateway Interface,网络服务网关接口.首先声明,它不是服务器,也不是python模块,它是一种规范,描述Web服务器和应用之间的交互.通俗来讲,它就是一条纽带,连接着Web服务器和应用.

WSGI应用

        WSGI应用是一个可调用(callable)对象,它可以是一个函数,一个方法,一个类,或者一个带有__call__()方法的实例.它必须接收两个参数:
        environ: 包含所有HTTP请求信息的dict对象;
        start_response: 发送HTTP响应的函数.
        看下面的例子:
example1.py
#! /usr/bin/env python
from wsgiref.simple_server import make_server    # wsgiref是python内置的wsgi服务器


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

Hello, web!

' def main(): wsgi_server = make_server('', 8000, application) print "Serving HTTP on port 8000..." wsgi_server.serve_forever() if __name__ == '__main__': main()
         在application中start_response发送了HTTP响应头部,第一个参数是响应码,第二个参数是HTTP头部信息.然后函数返回值作为HTTP响应的Body发送给浏览器.运行结果: 
  
WSGI接口_第1张图片
        非常强大的东西,WSGI接口让我们在Web开发时不用再去关注如何接受/解析和发送HTTP请求,不需要去编写这些底层的代码,而是专注与Web业务.

你可能感兴趣的:(openstack,python)