美文网首页
django cookies 和session

django cookies 和session

作者: 金融测试民工 | 来源:发表于2020-11-26 20:49 被阅读0次

    django做web系统时,避免不了登陆注册及cookies 和 session的设置,那么又是如何设置的呢?

    一、cookies

    1、什么是cookies

          cookies是一种数据存储技术

         将一段文本保存在客户端(浏览器)的一种技术。并可以长时间的保存

    2、cookies的使用场合

        1、保存登录信息

        2、保存用户的搜索关键词

        3、django 中使用 cookies

           设置cookies(保存数据到客户端)

           1、不使用模板

          resp = HttpResponse("给客户端的一句话")

          resp.set_cookie(key,value,expires)

          return resp

          key : cookie的名称

          value : 保存的cookie的值

          expires : 保存的时间,以 s 为单位

         ex:

             resp.set_cookie('uname','zsf',60*60*24*365)

         2、使用模板

         resp = render(request,'xxx.html',locals())

         resp.set_cookie(key,value,expires)

         return resp

         3、重定向

         resp = HttpResponseRedirect('/login/')

         resp.set_cookie(key,value,expires)

         return resp

        2、获取cookies(从客户端获取数据)

    后续操作都可以根据这个判断,如果cookies不存在则pass

         request.COOKIES

    二、session - 会话

        1、什么是session

         session(会话),实际上就是服务器为每个浏览器临时开辟的一段空间,用于保存 相关的请求信息

        2、session的应用场合

         session也是为了存放数据而存在的,通常会把服务器端要用到的数据保存进 session

        3、Django中使用session

           1、设置session的值

                request.session['key']=值

                request.session.set_expiry(time):设置过期时间,如果设置为0的话则表示浏览器关闭则失效

          2、获取session的值

               request.session.get('key')

          3、删除 session 的值

               del request.session['key']

          4、settings.py 有关session的设置

                4.1、SESSION_COOKIE_AGE = 60 * 30

                4.2、SESSION_EXPIRE_AT_BROWSER_CLOSE = True

    相关文章

      网友评论

          本文标题:django cookies 和session

          本文链接:https://www.haomeiwen.com/subject/mkiziktx.html