Подтвердить что ты не робот

Python tornado get request url

Вот мой код:

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write(self.request.url)

def main():
    settings = {"template_path": "html","static_path": "static"}
    tornado.options.parse_command_line()
    application = tornado.web.Application([
       (r"/story/page1", MainHandler),
        ],**settings)

Я хочу получить строку "/story/page1". как?

4b9b3361

Ответ 1

Вы можете получить текущий url внутри RequestHandler с помощью self.request.uri:

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write(self.request.uri)

Ответ 2

Я думаю, что вы ищете self.request.path. Посмотрите на функции, доступные для HTTPServerRequest.

class MainHandler(tornado.web.RequestHandler):
    def get(self):
        self.write(self.request.path)

Ответ 3

Не существует метода, который дает вам доступ к полному URL, но вы можете создать его, используя протокол, хост и URI, например

url = '{}://{}{}'.format(self.request.protocol,self.request.host,self.request.uri)