tornado根据路由调用对应handler类。路由参数是一个元组列表,使用正则表达式匹配URL域名后面,但是不包括参数(url中?部分)和碎片(url中#部分)。
return tornado.web.Application([ (r"/", MainHandler), ])1.使用正则表达式不匹配参数(url中?部分)和碎片(url中#部分); 2.路由中的正则已经隐含有“^”“ ”,即字符串"/"被看作为"/ ”)。
tornado路由可以使用正则表达式中的子表达式传递url参数。比如:
(r"/member//(\w*)/([01]*)", MemberHandler),匹配以后,tornado会将字符串()中匹配到的内容,作为参数传递到MemberHandler中去,因此我们在MemberHandler中定义方法时需要增加参数:
class MemberHandler(tornado.web.RequestHandler): def get(self,data,num): self.write(data)在handle中可以处理前端传过来的参数,并返回相关数据。tornado支持任何合法的HTTP请求(GET、POST、PUT、DELETE、HEAD、OPTIONS)。只需在类中建立相关的方法。
class MemberHandler(tornado.web.RequestHandler): def get(self,data): self.write(data) def post(self,data): self.write(data)