添加一个controller文件夹,其下放各个业务逻辑处理
from controllers.account import LoginHandler
from controllers.home import HomeHandler
application = tornado.web.Application([
(r"/index", MainHandler),
(r"/login", LoginHandler),
(r"/home", HomeHandler),
],**settings)
Tornado的路由系统在运行入口文件中,一个url对应的是一个类,在其他地方的需要导入
类似于Django的CBV模式,根据url找到对应处理的类,然后根据请求方式找到对应处理的函数
eg:
class MainHandler(tornado.web.RequestHandler):
def get(self):
#self.write("Hello, world")
#self.render("main.html")
self.redirect('http://www.baidu.com')
请求对应函数略
self的write()对应return Httpresponse()
self.render()对应 return render(resquest,)
self.redirect()对应return redirect()
另 Tornado终止函数执行用return
取数据:
username=self.get_argument("user")
password=self.get_argument("pwd")
cookie
#self.set_cookie('is_login',"oooo")
#xx=self.get_cookie("is_login")#dafault=None
加密cookie:
"cookie_secret":'aefseedfwgr', #cookie加密密钥,settings中添加
self.set_secure_cookie('is_login',"oooo") #加密cookie键值对,对应拿也要处理
xx=self.get_secure_cookie("is_login")#dafault=None
#file_metas = self.request.files["fff"] #取上传文件
print(self._headers) #取请求头