- app是一个callable object,接受的参数(environ,start_response),这是paste系统交给application的,符合
WSGI规范的参数. app需要完成的任务是响应envrion中的请求,准备好响应头和消息体,然后交给start_response处理,并返回响应消息体。
- filter是一个callable object,其唯一参数是(app),这是WSGI的application对象,见(1),filter需要完成的工作是将application包装成另一个application(“过滤”),并返回这个包装后的application。
- app_factory是一个callable object,其接受的参数是一些关于application的配置信息:(global_conf,**kwargs),global_conf是在ini文件中default section中定义的一系列key-value对,而**kwargs,即一些本地配置,是在ini文件中,app:xxx section中定义的一系列key-value对。app_factory返回值是一个application对象
- filter_factory是一个callable object,其接受的参数是一系列关于filter的配置信息:(global_conf,**kwargs),global_conf是在ini文件中default section中定义的一系列key-value对,而**kwargs,即一些本地配置,是在ini文件中,filter:xxx section中定义的一系列key-value对。filter_factory返回一个filter对象
给个例子:
pastedeploylab.ini:
- [DEFAULT]
- key1=value1
- key2=value2
- key3=values
- [composite:pdl]
- use=egg:Paste#urlmap
- /:root
- /calc:calc
- [pipeline:root]
- pipeline = logrequest showversion
- [pipeline:calc]
- pipeline = logrequest calculator
- [filter:logrequest]
- username = root
- password = root123
- paste.filter_factory = pastedeploylab:LogFilter.factory
- [app:showversion]
- version = 1.0.0
- paste.app_factory = pastedeploylab:ShowVersion.factory
- [app:calculator]
- description = This is an "+-*/" Calculator
- paste.app_factory = pastedeploylab:Calculator.factory
Reference:
1. http://blog.csdn.net/sonicatnoc/article/details/6539716
2. Python Paste Doc, http://pythonpaste.org/
沒有留言:
張貼留言