什么是session:cookie和session的区别

ernestwang 960 0

cookie(重要)面试必问

  • http状态是一个无状态的连接,因为用户在点击网站的时候,网站是不会记录你的上一次点击状态的行为 必须有cookie来保持他的状态。这样用户在点击下一个操作的时候就不用再次登录,用户的体验是相当好的 当第一次去访问网页的时候,会产生一个cookie,并携带,每次去访问同一个网站的时候都会携带 https://www.cnblogs.com/wangjintao-0623/p/9598827.html
    from flask import Blueprint,request, make_response
    
    cookie = Blueprint("cookie", __name__)
    
    #得到cookie
    @cookie.route("/get/")
    def get_cookie():
        #如果name的值为空的话,name的值就是我是谁???
        #name有值的话,就返回的是真实cookie值
        return request.cookies.get("name", "我是谁???")
    
    #设置cookie
    @cookie.route("/set/")
    def set_cookie():
        resp = make_response("cookie已设置")
        #过期时间
        #max_age:有效期,是一个整数,是一个秒数
        #expirs:有效期,是一个datetime时间的类型的数据,但是不用
        resp.set_cookie("name", "qqqq", max_age=10)
        return resp
    #销毁cookie
    @cookie.route("/del/")
    def del_cookie():
        resp = make_response("cookie已销毁")
        resp.delete_cookie("name")
        return resp
    

session(会话)

  • 说明:session是比cookie更加安全的一种携带数据的方式,功能都是一样的额,一般都使用session
  • session会把数据存到服务器中,cookie存到客户端里
    from flask import  Blueprint,session
    
    sess = Blueprint("sess", __name__, url_prefix="/sess")
    #获取session
    @sess.route("/get/")
    def get_sess():
        return session.get("name", "who are you")
    #设置session
    @sess.route("/set/")
    def set_sess():
        #s设置永久有效,默认是false,只要关闭了浏览器,sesssion就失效了
        #可以在这个地方设置,也可以在app里面设置
        session.permanent = True
        session["name"] = "zxcv"
        return "session已设置"
    #删除session
    @sess.route("/del/")
    def del_sess():
        session.clear()
        return "session已删除"

发布评论 0条评论)

还木有评论哦,快来抢沙发吧~

复制成功
微信号: irenyuwang
关注微信公众号,站长免费提供流量增长方案。
我知道了