webob

# -*- coding: utf-8 -*-
from wsgiref.simple_server import make_server

import routes.middleware
import webob.dec
import webob.exc
from oslo_config import cfg
from oslo_context import context
from oslo_log import log as logging

DOMAIN = 'demo'
CONF = cfg.CONF
LOG = logging.getLogger(__name__)
logging.register_options(CONF)
logging.setup(CONF, DOMAIN)
class Controller:
    @webob.dec.wsgify
    def __call__(self, req):
        return webob.Response("Hello World!")


class Router(object):
    def __init__(self):
        self._mapper = routes.Mapper()
        self._mapper.connect('/spch',
                             controller=Controller(),
                             action='index',
                             conditions={'method': ['GET']})

        self._router = routes.middleware.RoutesMiddleware(self._dispatch, self._mapper)

    @webob.dec.wsgify
    def __call__(self, req):
        return self._router

    @staticmethod
    @webob.dec.wsgify
    def _dispatch(req):
        match = req.environ['wsgiorg.routing_args'][1]
        LOG.info("Listing backups for instance '%s'" % "fdfdfd")
        if not match:
            return webob.exc.HTTPNotFound()
        #根据连接,找到对应的控制器
        app = match['controller']
        return app


app = Router()
httpd = make_server('localhost', 8282, app)
httpd.serve_forever()
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 雾气空蒙绕远山, 日自升起云自闲。 佳木无意生岩壁, 只余青松立谷间。 光影幻过映杂石, 偶得鸟鸣石上边。 一株兰...
    墨绮阅读 1,621评论 7 19

友情链接更多精彩内容