添加一个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) #取请求头
本文介绍了Tornado框架中的控制器部分,如何创建controller文件夹来组织业务逻辑,并讲解了Tornado的路由系统如何通过URL映射到处理类及请求方法。内容涉及到类视图模式(CBV)以及请求处理函数的选择,同时提到了Tornado中终止函数执行的方法——使用return。此外,还提及了获取和处理cookie,包括加密cookie的机制。
502

被折叠的 条评论
为什么被折叠?



