Middleware 处于 server/gateway 和 application/framework 之间,对 server/gateway 来说,它相当于 application/framework;对 application/framework 来说,它相当于 server/gateway。Middleware可以实现以下功能:

1.根据 url 把用户请求调度到不同的 application 中。
2.负载均衡,转发用户请求
3.预处理 XSL 等相关数据
4.限制请求速率,设置白名单


这个图片解释了为什么flask会使用localstack来处理请求

class IPBlacklistMiddleware(object):def __init__(self, app):self.app = appdef __call__(self, environ, start_response):ip_addr = environ.get('HTTP_HOST').split(':')[0]if ip_addr not in ('127.0.0.1'):return forbidden(start_response)return self.app(environ, start_response)def forbidden(start_response):start_response('403 Forbidden', [('Content-Type', 'text/plain')])return ['Forbidden']def application(environ, start_response):start_response('200 OK', [('Content-Type', 'text/plain')])return ['This is a python application!']if __name__ == '__main__':from wsgiref.simple_server import make_serverapplication = IPBlacklistMiddleware(application)server = make_server('0.0.0.0', 8080, application)server.serve_forever()

https://www.cnblogs.com/-wenli/p/10884168.html

WSGI Middleware相关推荐

  1. 如何为Pyramid添加Middleware

    在pylons的文档中,有专门讲过如何添加自己的Middleware, 通过这些Middleware, 我们可以改变输入和输出.这也是WSGI(Web Server Gateway Interface ...

  2. Web 开发规范 — WSGI

    目录 目录 WSGI 简介 为什么需要 WSGI 这个规范 WSGI 如何工作 WSGI的角色 Server 如何调用 Application application 的两个参数 applicatio ...

  3. php的wsgi框架结构,理解 WSGI 框架

    This document specifies a proposed standard interface between web servers and Python web application ...

  4. Python中的WSGI

    Python中的WSGI 文章目录 Python中的WSGI 一.WSGI引入 1. 浏览器请求动态页面过程 2.问题 二.什么是WSGI 三.WSGI的接口 1.WSGI接口定义格式 2.参数解释 ...

  5. Python Web开发:开发wsgi中间件

    本文参考了: github.com/alanctkc/ws- Youtube : Creating WSGI Middleware 上篇文章简要提到:wsgi 规范中的 app 是一个可调用对象,可以 ...

  6. python基础教程运行程序_Python入门基础教程:WSGI

    原标题:Python入门基础教程:WSGI WSGI 简介 WSGI 是什么 WSGI 是 Python Web Server Gateway Interface 的缩写,是描述 Web 服务器与 P ...

  7. linux wsgi,linux中wsgi的详解(企业级)

    linux+nginx+mariadb+php/perl/python=LNMP 利用python脚本架构,该脚本是用来记录系统时间 介绍 wsgi server wsgi规定符合wsgi规范的wsg ...

  8. python入门基础教程-Python入门基础教程:WSGI

    原标题:Python入门基础教程:WSGI WSGI 简介 WSGI 是什么 WSGI 是 Python Web Server Gateway Interface 的缩写,是描述 Web 服务器与 P ...

  9. keystone WSGI流程

    作为OpenStack两种基本的通信方式(RESTful API与消息总线)之中的一个.理解RESTful API的设计思路和运行过程,有助于我们对OpenStack有更好的理解.RESTful仅仅是 ...

最新文章

  1. Junit指定测试执行顺序
  2. 从 Spark 的 DataFrame 中取出具体某一行详解
  3. Struts2标签库和OGNL
  4. Drawing绘图halcon算子,持续更新
  5. 纯CSS实现侧边栏/分栏高度自动相等
  6. Intel MKL 多线程设置
  7. SMTP 服务器要求安全连接或客户端未通过身份验证的各个解决方案(C#)
  8. 通过Nacos让Nginx拥有服务发现能力
  9. 洛谷 P3382 【模板】三分法
  10. SpringBoot 整合Shiro实现动态权限加载更新+Session共享+单点登录
  11. css滤镜使文字变3D效果
  12. PyQt5学习--基本窗口控件--加载文件-QFileDialog
  13. SaaS行业乘风杨帆,中小企业市场潜力分析
  14. 【持久化框架】SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载 【转】...
  15. 最新教师计算机测试题,信息技术教师基本功测试题
  16. 淘口令解析api接口_淘口令解析接口|淘口令还原接口|淘口令解密接口|淘口令转换网址接口...
  17. PID控制器及其参数整定
  18. 《演说之禅》读书笔记
  19. 两个经纬度偏角_[转载]根据两点的经纬度求方位角和距离,等
  20. 正则表达式( 形容词、转义符号、补充)

热门文章

  1. xrdp协议_XRDP与VNC的关系(转载)
  2. 卷积神经网络流程图_卷积神经网络
  3. 从零开始学前端:作用域、执行顺序 --- 今天你学习了吗?(JS:Day9)
  4. mysql 5.5.35 单机多实例配置详解_基于mysql-5.5.32的单机多实例多配置文件的
  5. vim 批量替换字符串_Vim 有什么奇技淫巧?
  6. Python视频处理案例六则:旋转视频、调整音量/播放速度、淡入淡出、插入转场素材...
  7. Python课堂上我与学生斗智斗勇已8个学期
  8. 1000道Python题库系列分享四(40道)
  9. java校验参数防止攻击_程序员写接口参数校验,总是太多if else?一招让你避免体力活...
  10. Tensorflow学习笔记(三)