cookie session

Posted dangrui0725

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cookie session相关的知识,希望对你有一定的参考价值。

cookie

# views.py

def login(request):  # 登陆页面
    if request.mothod == POST:
        name = request.POST.get(user)
        pwd = request.POST.get(pwd)

        if name == yuan and pwd == 123:

            ret = redirect(/index/)
            ret.set_cookie(key,value)    # 登陆成功后,给cookie赋一组键值对
       #
ret.set_cookie(‘username‘,‘yuan‘,max_age=10,expires=datetime.datetime.utcnow()+datetime.timedelta(days=3))
        # max_age设置cookie过期时间为10秒,expires设置cookie过期时间为3天(针对不同浏览器,需要同时设置这两个值,并设置为一样) return ret


def index(request):
# if request.COOKIES.get(‘key‘,None):   # 判断用户是否有cookie设置的key
  if request.COOKIES.get(‘key‘,None)==‘value‘:  # 获取cookie的值,判断key是否为value,None代表取不到时以None代替,这样不报错
    return render(request,‘index.html‘,locals())
  else:
    return redirect(‘/login/‘)

session(django的session默认存储在数据表中)

# views.py

def login(request):  # 登陆页面
    if request.mothod == POST:
        name = request.POST.get(user)
        pwd = request.POST.get(pwd)

        if name == yuan and pwd == 123:
        request.session[‘is_login‘]=True  # 创建两个session
        request.session[‘user‘]=name
       
        return redirect(‘/index/‘)         
def index(request):   if request.session.get(is_login,None):  # 获取session的值,判断is_login是否有值     name = request.session.get(‘user‘)    
    return render(request,index.html,locals())   else:     return redirect(/login/)

下面我们再来最后的总结一下cookie和session的知识点

一、操作Cookie

  获取cookie:request.COOKIES[key]

  设置cookie:response.set_cookie(key,value)

由于cookie保存在客户端的电脑上,所以,jquery也可以操作cookie。

<script src=‘http://830909.blog.51cto.com/static/js/jquery.cookie.js‘></script>
$.cookie("list_pager_num", 30,{ path: ‘/‘ });

二、操作Session(session默认在服务器端保存15天)

  获取session:request.session[key]

  设置session:reqeust.session[key] = value

  删除session:del request.session[key]    

(这个删除其实就是把数据库的session_data更新为一个其他的值了,并没有立即删除)

request.session.set_expiry(value)
* 如果value是个整数,session会在此秒数后失效。
* 如果value是个datatime或timedelta,session就会在这个时间后失效。
* 如果value是0,用户关闭浏览器session就会失效。
* 如果value是None,session会依赖全局session失效策略。















以上是关于cookie session的主要内容,如果未能解决你的问题,请参考以下文章

js代码片段: utils/lcoalStorage/cookie

cookie和session的代码实现

c#如何采集需要登录的页面

Cookie和Session的工作流程及区别(附代码案例)

cookie和session

cookie和session