heat.common.wsgi 模块¶
用于处理 WSGI 服务器的实用方法。
- class heat.common.wsgi.AppFactory(conf)[source]¶
基类:
BasePasteFactory通用的 paste.deploy 应用工厂。
这需要将 heat.app_factory 设置为可调用对象,该对象在被调用时返回一个 WSGI 应用。名称的格式为 <模块>:<可调用对象> 例如:
[app:apiv1app] paste.app_factory = heat.common.wsgi:app_factory heat.app_factory = heat.api.cfn.v1:API
WSGI 应用构造函数必须接受一个 ConfigOpts 对象和一个本地配置字典作为它的两个参数。
- KEY = 'heat.app_factory'¶
- class heat.common.wsgi.BasePasteFactory(conf)[source]¶
基类:
objectpaste 应用和过滤器工厂的基类。
子类必须覆盖 KEY 类属性并提供一个 __call__ 方法。
- KEY = None¶
- class heat.common.wsgi.Debug(application)[source]¶
基类:
Middleware用于获取请求和响应信息的辅助类。
可以插入到任何 WSGI 应用链中的辅助类,用于获取请求和响应信息。
- class heat.common.wsgi.DefaultMethodController[source]¶
基类:
object处理 OPTIONS 请求方法的控制器。
此控制器处理 OPTIONS 请求方法以及应用未显式实现的任何 HTTP 方法。
- class heat.common.wsgi.FilterFactory(conf)[source]¶
基类:
AppFactory通用的 paste.deploy 过滤器工厂。
这需要将 heat.filter_factory 设置为可调用对象,该对象在被调用时返回一个 WSGI 过滤器。格式为 <模块>:<可调用对象> 例如:
[filter:cache] paste.filter_factory = heat.common.wsgi:filter_factory heat.filter_factory = heat.api.middleware.cache:CacheFilter
WSGI 过滤器构造函数必须接受一个 WSGI 应用、一个 ConfigOpts 对象和一个本地配置字典作为它的三个参数。
- KEY = 'heat.filter_factory'¶
- class heat.common.wsgi.Middleware(application)[source]¶
基类:
object基础 WSGI 中间件包装器。
这些类需要初始化一个将在下一步调用的应用。默认情况下,中间件将简单地调用其包装的应用,或者您可以覆盖 __call__ 以自定义其行为。
- class heat.common.wsgi.Request(environ, charset=None, unicode_errors=None, decode_param_names=None, **kw)[source]¶
基类:
Request向基础 webob.Request 添加一些 OpenStack API 特定的逻辑。
- class heat.common.wsgi.Resource(controller, deserializer, serializer=None)[source]¶
基类:
object处理 (反)序列化和控制器调度的 WSGI 应用。
读取 RoutesMiddleware 提供的路由信息,并调用反序列化器、控制器和序列化器上的请求操作方法。这三个对象可以实现任何基本控制器操作方法(创建、更新、显示、索引、删除)以及 API 路由器中可能指定的任何方法。还可以实现一个“default”方法,以代替任何未实现的操作。反序列化器方法必须接受一个请求参数并返回一个字典。控制器方法必须接受一个请求参数。此外,它们还必须接受由反序列化器返回的键表示的关键字参数。它们可以引发 webob.exc 异常或返回一个字典,该字典将按请求的内容类型进行序列化。
- heat.common.wsgi.paste_deploy_app(paste_config_file, app_name, conf)[source]¶
从 PasteDeploy 配置加载 WSGI 应用。
使用 deploy.loadapp() 从 PasteDeploy 配置加载应用,确保将提供的 ConfigOpts 对象传递给应用和过滤器构造函数。
- 参数:
paste_config_file – PasteDeploy 配置文件
app_name – 从文件中加载的应用/管道的名称
conf – 要传递给应用及其过滤器的 ConfigOpts 对象
- 返回值:
WSGI 应用