cookie

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           # 上传代码后服务器自动重启
)
原文地址:https://www.cnblogs.com/tangpg/p/8556581.html