python的WSGI协议

作者: WillCheng | 来源:发表于2018-03-30 16:20 被阅读0次

    协议作用

    用于将应用层逻辑和服务端网关解耦


    123.png

    协议内容

    看一段简示例代码:

    123.png

    函数application用于实现应用层逻辑,关注其两个参数及返回
    具体协议内容请参考 [https://www.cnblogs.com/rim99/p/6415569.html]

    示例代码

    #!/usr/bin/python3
    
    def application(environ, start_response):
        start_response('200 OK', [('Content-Type', 'text/html')])
        for k in sorted(environ.keys()) : print('%s = ' % k, environ[k])
        return [b'abc', b'xyz'] 
    
    print("Serving HTTP on port 8080...")
    from cheroot import wsgi
    server = wsgi.Server(("0.0.0.0", 8080), application, server_name="localhost")
    try:
        server.start()
    except (KeyboardInterrupt, SystemExit):
        server.stop()
    server = None
    

    可能需要安装cheroot

    代码实际运行情况

    图中包含了代码、浏览器、服务端日志三部分


    123.png

    主要注意的地方:
    1、浏览器收到的数据
    2、html返回头
    3、浏览器请求内容
    4、用户IP等环境变量

    相关文章

      网友评论

        本文标题:python的WSGI协议

        本文链接:https://www.haomeiwen.com/subject/kseicftx.html