什么是session:cookie和session的区别

    Python编程 wuya 203次浏览 已收录 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已删除"

    学海无涯 , 版权所有丨如未注明 , 均为原创丨转载请注明什么是session:cookie和session的区别
    喜欢 (0)
    发表我的评论
    取消评论
    表情 加粗 删除线 居中 斜体 签到

    Hi,您需要填写昵称和邮箱!

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址