Как исправить ошибку 404 в CherryPy, если в режиме отладки я получаю 200 OK? - PullRequest
0 голосов
/ 30 октября 2018

Я добавил новый параметр и изменил формат запроса. В режиме отладки все проходит, и я получаю статус 200 ОК, но когда я запускаю свое приложение, я постоянно получаю 404.

@cherrypy.popargs('id')
class Application:
    def __init__(self):
        self.scores = Scoring()

@cherrypy.popargs('model', 'threshold')
class Scoring:

    @cherrypy.expose
    @authorization
    def index(self, id, model=None, threshold=None):
        application_id = int(id)
        threshold = float(threshold)
        model = int(model)
...
if __name__ == '__main__':
    cherrypy.config.update({
            'request.dispatch': cherrypy.dispatch.MethodDispatcher(),
            'tools.response_headers.on': True,
            'tools.response_headers.headers': [('Content-Type', 'text/json')],
            'server.socket_host': '0.0.0.0',
            'server.socket_port': 8080
        }
    )
    cherrypy.tree.mount(Application(), '/applications/')
    cherrypy.engine.start()
    cherrypy.engine.block()

Тот же код, но без порогового параметра работал отлично. Я предполагаю, что допустил некоторую ошибку при добавлении нового параметра. Формат запроса GET, который выглядел так:

'http://{host}:{port}/applications/{id}/scores/{model}/'

А теперь это выглядит так:

'http://{host}:{port}/applications/{id}/scores/{model}/{threshold}/'

Я новичок в CherryPy, поэтому любая помощь приветствуется.

...