self.get_argument不起作用

时间:2012-10-26 09:23:55

标签: python tornado

我刚刚开始学习Tornado并遇到了我的hello.py中的第一个问题。 我按照“龙卷风简介”中给出的步骤和代码进行了操作。这是代码。

     import tornado.httpserver
     import tornado.ioloop
     import tornado.options
     import tornado.web

     from tornado.options import define, options
     define("port", default=8000, help="run on the given port", type=int)

     class IndexHandler(tornado.web.RequestHandler):
         def get(self):
            greeting = self.get_argument('greeting','Hello')
            self.write(greeting + ', friendly user!')

     if __name__=="__main__":
        tornado.options.parse_command_line()
        app = tornado.web.Application(handers=[(r"/", IndexHandler)])
        http_server = tornado.httpserver.HTTPServer(app)
        http_server.listen(options.port)
        tornado.ioloop.IOLoop.instance().start()

在我通过

在其他终端窗口中运行之后
    curl http://localhost:8000/

我没有得到预期的答案,应该是

    Hello, friendly user! 

相反,回复就像是

    [I 121026 18:20:38 web:1359] 301 GET / (127.0.0.1) 1.12ms

我是新来的,我不知道如何解决它。这个问题可能听起来真的很蠢买请帮我一个忙,帮帮我吧!非常感谢!!!!!

2 个答案:

答案 0 :(得分:2)

不确定这是否是主要问题,但您在

中拼错了handlers
handers=[(r"/", IndexHandler)])

答案 1 :(得分:0)

也许你的域名不对。我想你可以创建port = 8888,然后在你的shell中,你可以输入: python hello.py --port = 8888#hello.py是文件名 网址是:localhost:8888