[英]Tornado end points
我正在尝试使用Tornado并且不确定如何支持两个不同的REST API端点。 说我想支持“/”和“/ Hello”。 根据我提出的初始文档,我是否需要为每个端点创建一个处理程序类?
import tornado.ioloop
import tornado.web
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, Tornado")
class SecondHandler(tornado.web.RequestHandler):
def get(self):
self.write("<em>Hello, Second Handler!</em>")
def make_app():
return tornado.web.Application([
(r"/", MainHandler),
(r"/Hello", SecondHandler)
])
if __name__ == "__main__":
app = make_app()
app.listen(8888)
tornado.ioloop.IOLoop.current().start()
是的,这是实现多个端点的正确方法。
没有必要为每个端点都有一个单独的处理程序。 实际上,单个RequestHandler对象可以为任意数量的端点提供服务。
因此,无论您是想使用单个RequestHandler还是以上面正确完成的方式提供多个请求,这都是您的设计决策。
在上面的情况下,如果您选择对两个端点使用MainHandler,那么它将看起来像这样。
def make_app():
return tornado.web.Application([
(r"/", MainHandler),
(r"/Hello", MainHandler) ])
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.