在CherryPy中找不到路径

2024-10-02 00:41:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直致力于在CherryPy中实现一个测试API。在

我阅读了一些论坛、教程,并将工作中的老Python开发人员编写的代码拼凑在一起,这就是我得到的:

import json
import cherrypy

class person:
    def default(self, *args):
        r = {
            'firstName': args[0],
            'lastName': args[1],
            'age': args[2]
        }
        return json.dumps(r)
    default.exposed = True

class api:
    def __init__(self):
        self.person = person()

class Root:
    def __init__(self):
        self.api = api()

conf = {
    '/': { 'request.dispatch': cherrypy.dispatch.MethodDispatcher()}
}

cherrypy.config.update(conf)
cherrypy.tree.mount(Root()) 
cherrypy.quickstart()

运行此代码的结果是以下错误:

404 Not Found

The path '/api/person/Blake/Williams/27' was not found.

Traceback (most recent call last): File "/Users/blakewilliams/Programming/Practice/Python/VirtualEnv/foo/lib/python2.7/site-packages/cherrypy/_cprequest.py", line 656, in respond response.body = self.handler() File "/Users/blakewilliams/Programming/Practice/Python/VirtualEnv/foo/lib/python2.7/site-packages/cherrypy/lib/encoding.py", line 188, in call self.body = self.oldhandler(*args, **kwargs) File "/Users/blakewilliams/Programming/Practice/Python/VirtualEnv/foo/lib/python2.7/site-packages/cherrypy/_cperror.py", line 386, in call raise self

NotFound: (404, "The path '/api/person/Blake/Williams/27' was not found.")

我不知道我做错了什么。。。提前谢谢你的帮助。在


Tags: selfapivirtualenvlibdefargscallusers
1条回答
网友
1楼 · 发布于 2024-10-02 00:41:37

如果像这样启动cherrypy服务器,那么它可以工作:

cherrypy.quickstart(cherrypy.Application(Root()), '/', {})

啊!注意:仍然找不到您指定的路径:您忘记了api级别:

^{pr2}$

相关问题 更多 >

    热门问题