• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Python webapi.notfound函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中webapi.notfound函数的典型用法代码示例。如果您正苦于以下问题:Python notfound函数的具体用法?Python notfound怎么用?Python notfound使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。



在下文中一共展示了notfound函数的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: handle

def handle(mapping, fvars=None):
    """
    Call the appropriate function based on the url to function mapping in `mapping`.
    If no module for the function is specified, look up the function in `fvars`. If
    `fvars` is empty, using the caller's context.

    `mapping` should be a tuple of paired regular expressions with function name
    substitutions. `handle` will import modules as necessary.
    """
    for url, ofno in utils.group(mapping, 2):
        if isinstance(ofno, tuple): 
            ofn, fna = ofno[0], list(ofno[1:])
        else: 
            ofn, fna = ofno, []
        fn, result = utils.re_subm('^' + url + '$', ofn, web.ctx.path)
        if result: # it's a match
            if fn.split(' ', 1)[0] == "redirect":
                url = fn.split(' ', 1)[1]
                if web.ctx.method == "GET":
                    x = web.ctx.env.get('QUERY_STRING', '')
                    if x: 
                        url += '?' + x
                return http.redirect(url)
            elif '.' in fn: 
                x = fn.split('.')
                mod, cls = '.'.join(x[:-1]), x[-1]
                mod = __import__(mod, globals(), locals(), [""])
                cls = getattr(mod, cls)
            else:
                cls = fn
                mod = fvars
                if isinstance(mod, types.ModuleType): 
                    mod = vars(mod)
                try: 
                    cls = mod[cls]
                except KeyError: 
                    return web.notfound()
            
            meth = web.ctx.method
            if meth == "HEAD":
                if not hasattr(cls, meth): 
                    meth = "GET"
            if not hasattr(cls, meth): 
                return nomethod(cls)
            tocall = getattr(cls(), meth)
            args = list(result.groups())
            for d in re.findall(r'\\(\d+)', ofn):
                args.pop(int(d) - 1)
            return tocall(*([x and urllib.unquote(x) for x in args] + fna))

    return web.notfound()
开发者ID:1ngmar,项目名称:ianki,代码行数:51,代码来源:request.py


示例2: internal

 def internal(self, arg):
     if '/' in arg:
         first, rest = arg.split('/', 1)
         func = prefix + first
         args = ['/' + rest]
     else:
         func = prefix + arg
         args = []
     
     if hasattr(self, func):
         try:
             return getattr(self, func)(*args)
         except TypeError:
             raise web.notfound()
     else:
         raise web.notfound()
开发者ID:alustig,项目名称:OSPi,代码行数:16,代码来源:application.py


示例3: _delegate

    def _delegate(self, f, fvars, args=[]):
        def handle_class(cls):
            meth = web.ctx.method
            if meth == "HEAD" and not hasattr(cls, meth):
                meth = "GET"
            if not hasattr(cls, meth):
                raise web.nomethod(cls)
            tocall = getattr(cls(), meth)
            return tocall(*args)

        def is_class(o):
            return isinstance(o, (types.ClassType, type))

        if f is None:
            raise NotFound
        elif isinstance(f, application):
            return f.handle()
        elif is_class(f):
            return handle_class(f)
        elif isinstance(f, str):
            if "." in f:
                x = f.split(".")
                mod, cls = ".".join(x[:-1]), x[-1]
                mod = __import__(mod, globals(), locals(), [""])
                cls = getattr(mod, cls)
            else:
                cls = fvars[f]
            return handle_class(cls)
        elif hasattr(f, "__call__"):
            return f()
        else:
            return web.notfound()
开发者ID:acgourley,项目名称:watchdog,代码行数:32,代码来源:application.py


示例4: _delegate

 def _delegate(self, f, fvars, args=[]):
     def handle_class(cls):
         meth = web.ctx.method
         if meth == 'HEAD' and not hasattr(cls, meth):
             meth = 'GET'
         if not hasattr(cls, meth):
             raise web.nomethod(cls)
         tocall = getattr(cls(), meth)
         return tocall(*args)
         
     def is_class(o): return isinstance(o, (types.ClassType, type))
         
     if f is None:
         raise web.notfound()
     elif isinstance(f, application):
         return f.handle_with_processors()
     elif is_class(f):
         return handle_class(f)
     elif isinstance(f, basestring):
         if f.startswith('redirect '):
             url = f.split(' ', 1)[1]
             if web.ctx.method == "GET":
                 x = web.ctx.env.get('QUERY_STRING', '')
                 if x:
                     url += '?' + x
             raise web.redirect(url)
         elif '.' in f:
             x = f.split('.')
             if not len(x) == len(filter(None, x)):
                 raise web.internalerror()
             mod, cls = '.'.join(x[:-1]), x[-1]
             try:
                 mod = __import__(mod, globals(), locals(), [""])
             except: raise web.notfound()
             cls = getattr(mod, cls)
         else:
             cls = fvars.get(f)
         if cls:
             return handle_class(cls)
         else:
             raise web.notfound()
     elif hasattr(f, '__call__'):
         return f(*args)
     else:
         raise web.notfound()
开发者ID:kindy61,项目名称:webpy,代码行数:45,代码来源:application.py


示例5: internal

 def internal(*a, **kw):
     i = web.input(_method='get')
     if '_t' in i:
         try:
             t = background.threaddb[int(i._t)]
         except KeyError:
             return web.notfound()
         web._context[threading.currentThread()] = web._context[t]
         return
     else:
         return func(*a, **kw)
开发者ID:Codesleuth,项目名称:rabbitmq-dotnet-client,代码行数:11,代码来源:http.py


示例6: _delegate

    def _delegate(self, f, fvars, args=[]):
        def handle_class(cls):
            meth = web.ctx.method
            if meth == "HEAD" and not hasattr(cls, meth):
                meth = "GET"
            if not hasattr(cls, meth):
                raise web.nomethod(cls)
            tocall = getattr(cls(), meth)
            return tocall(*args)

        def is_class(o):
            return isinstance(o, (types.ClassType, type))

        if f is None:
            raise web.notfound()
        elif isinstance(f, application):
            return f.handle_with_processors()
        elif is_class(f):
            return handle_class(f)
        elif isinstance(f, basestring):
            if f.startswith("redirect "):
                url = f.split(" ", 1)[1]
                if web.ctx.method == "GET":
                    x = web.ctx.env.get("QUERY_STRING", "")
                    if x:
                        url += "?" + x
                raise web.redirect(url)
            elif "." in f:
                x = f.split(".")
                mod, cls = ".".join(x[:-1]), x[-1]
                mod = __import__(mod, globals(), locals(), [""])
                cls = getattr(mod, cls)
            else:
                cls = fvars[f]
            return handle_class(cls)
        elif hasattr(f, "__call__"):
            return f()
        else:
            return web.notfound()
开发者ID:navaneethrameshan,项目名称:SmartFleet,代码行数:39,代码来源:application.py


示例7: _delegate

 def _delegate(self, f, fvars, args=[]):
     def handle_class(cls):
         meth = web.ctx.method
         if meth == 'HEAD' and not hasattr(cls, meth):
             meth = 'GET'
         if not hasattr(cls, meth):
             raise web.nomethod(cls)
         tocall = getattr(cls(), meth)
         return tocall(*args)
         
     def is_class(o): return isinstance(o, (types.ClassType, type))
         
     if f is None:
         raise web.notfound()
     elif isinstance(f, application):
         return f.handle_with_processors()
     elif is_class(f):
         return handle_class(f)
     elif isinstance(f, basestring):
         if f.startswith('redirect '):
             url = f.split(' ', 1)[1]
             if web.ctx.method == "GET":
                 x = web.ctx.env.get('QUERY_STRING', '')
                 if x:
                     url += '?' + x
             raise web.redirect(url)
         elif '.' in f:
             mod, cls = f.rsplit('.', 1)
             mod = __import__(mod, None, None, [''])
             cls = getattr(mod, cls)
         else:
             cls = fvars[f]
         return handle_class(cls)
     elif hasattr(f, '__call__'):
         return f()
     else:
         return web.notfound()
开发者ID:alustig,项目名称:OSPi,代码行数:37,代码来源:application.py



注:本文中的webapi.notfound函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python webapi.storage函数代码示例发布时间:2022-05-26
下一篇:
Python webapi.nomethod函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap