使用带有路径前缀的 cherrypy 公开函数

Expose a function using cherrypy with a path prefix

cherrypy 中有没有办法将函数 foo_test() 作为服务器上的 /foo/test 端点公开?

下面的示例公开了两个端点 /index/foo_test:

class Test(object):

  @cherrypy.expose
  def index(self):

  @cherrypy.expose
  def foo_test(self):

注:

最后我不得不按照 http://docs.cherrypy.org/en/latest/advanced.html#the-special-cp-dispatch-method

中的解释覆盖 _cp_dispatch
class Test(object):

  def __init__(self):
       self.foo = Foo()

  def _cp_dispatch(self, vpath):
       if len(vpath) == 1:
            return self
       if len(vpath) == 2:
            return self.foo
       return self

  @cherrypy.expose
  def index(self):

class Foo(object):

  @cherrypy.expose
  def test(self):