一.简介
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)
四.handler处理
在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)