001 Django学习之WSGI(基于Python2.7)

来源:互联网 发布:php数组遍历 编辑:程序博客网 时间:2024/06/09 19:04

WSGI(Web Server Gateway Interface)

  1. 一个专门用于Web服务器的网关接口,让我们不需要自己写Http底层

一个基于WSGI的简单的服务器

# coding:utf-8from wsgiref.simple_server import make_server# 必须是application函数,代表一个应用APP# env参数内部有全部的请求信息,start_response函数是用于设置响应参数的def application(env, start_response):    start_response('200 ok', [('Content-Type', 'text/html')])    return "<h1>OK</h1>"if __name__ == "__main__":    # 启动一个服务,设置IP,Port,应用    http_server = make_server('127.0.0.1', 80, application)      # 创建httpserver,注意Google浏览器对80端口之外的访问会安全验证    http_server.serve_forever()  # 启动服务

application

  1. application()函数就是符合WSGI标准的一个HTTP处理函数,包含下面两个参数

  2. environ:一个包含所有HTTP请求信息的dict对象

  3. start_response:一个发送HTTP响应的函数

start_response

  1. start_response()函数接收两个参数

  2. 一个是HTTP响应码

  3. 一个是一组list表示的HTTP Header,每个Header用一个包含两个str的tuple表示

make_server

  1. 创建一个服务器(有三个需要给定的参数)
  2. IP地址,端口
  3. 处理函数是application

serve_forever

  1. 服务器一直开启
原创粉丝点击