cookie
当你在浏览器登陆时,浏览器记录这个登录信息(服务器响应时发送请求的数据和登录信息),再次访问时 浏览器会将访问请求和缓存的登录信息
都发送到服务器,服务器通过这个信息判断用户是否已经登录
set_cookie及set_secure_cookie
class SetCookieHandler(tornado.web.RequestHandler): def get(self): self.write('刷新成功') # 设置cookie self.set_cookie('cookie_test', 'this_is_cookie0') # set_cookie(名称,内容) self.set_cookie('cookie_test1', 'this_is_cookie',expires=time.time()+120) # 设置时间120s后过期 self.set_cookie('cookie_test2', 'this_is_cookie',max_age=120,expires=time.time()+60) # 过期时间为120s 优先取max_age self.set_cookie('cookie_test3', 'this_is_cookie',expires_days=1) # 设置1天后过期 self.set_cookie('cookie_test4', 'this_is_cookie',path='/') # 设置路径 self.set_cookie('cookie_test5', 'this_is_cookie',httponly=True) # 安全性,设置httponly,Js不能取到cookie信息 # 设置加密的内容 --密钥 self.set_secure_cookie('secure_cookie','iammiyao') # 通过在application配置密钥
clear_cookie及clear_all_cookies
# 清除 # self.clear_cookie('cookie_test') # 是cookie_test过期并清空内容 # self.clear_all_cookies() # 删除此次请求发送的所有cookie(使之过期清空内容)
get_cookie及get_secure_cookie
class GetCookieHandler(tornado.web.RequestHandler): def get(self): # 获取浏览器cookie内容 get_cookie=self.get_cookie('cookie_test') self.write(get_cookie) self.write('<br>') # 获取密钥的内容 get_cookie = self.get_secure_cookie('secure_cookie') self.write(get_cookie)
application = tornado.web.Application( handlers=[ (r"/",MainHandler), (r"/login",LoginHandler), (r"/set",SetCookieHandler), (r"/get",GetCookieHandler), (r"/buy",BuyHandler), ], template_path='templates', # 表明页面html的路径 static_path='static', cookie_secret='miyao', # 设置密钥 debug=True # 上传代码后服务器自动重启 )