web-dev-qa-db-ja.com

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"を取得します。どうやって ?

16
Lee_Prison

self.request.uriを使用して、内部の現在のURLを取得できます RequestHandler

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

あなたが探しているのはself.request.pathHTTPServerRequest で利用可能な関数を見てください。

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

完全なURLにアクセスできる方法はありませんが、プロトコルHostとURIを使用して作成できます。

url = '{}://{}{}'.format(self.request.protocol,self.request.Host,self.request.uri)
0
Mike N