Django的cookie和session在登录时的用法

Cookie
设置cookie(使用response设置):
	response.set_cookie(key,value[,max_age=None,expires=None)]
			max_age: 整数 单位为秒,指定cookie过期时间,设置为None:浏览器关闭失效,默认值
			expires: 指定过期时间,还支持datetime或timedelta,可以指定一个具体日期时间
            expires=datetime.datetime(2019, 1, 1, 2, 3, 4)
            或 datetime.datetime.now() + datetime.timedelta(days=10)
    注意:max_age和expries两个选一个指定

# cookie:
            # 1.cookie存在客户端
            # 2.cookie一般不跨域、浏览器
            # 3.cookie一般是小于4KB的文本
            # 4.cookie是由服务器端设置,cookie内容一般和当前用户相关
            # res.set_cookie('userid', users.first().id)
# cookie过期时间
            #    1.默认过期时间为浏览器会话时间(浏览器关闭就过期)
            #    2.expires: 设置一个指定的时间. datetime
            #    3.max_age: 设置从当前时间开始经过的秒数
            # d = datetime.datetime(2019, 8, 2, 15, 23, 30)
            # res.set_cookie('userid', users.first().id, expires=d)

获取cookie(使用request获取):
       request.COOKIES.get(key)
删除cookie(使用response删除):
       response.delete_cookie(key)
Seeion
服务器端会话技术,依赖于cookie.
	django中启用SESSION
		settings中
			INSTALLED_APPS:
				'django.contrib.sessions'
			MIDDLEWARE:
				'django.contrib.sessions.middleware.SessionMiddleware'
基本操作
    设置session值(使用request设置)
        # users是从数据库里面获取的对象
        request.session['userid'] = users.first().id
        request.session.set_expiry(86400)  # 设置过期时间,里面是秒数

    获取session值
        request.session.get('userid')
    
    删除session值
        session_key = request.session.session_key
        del request.session[session_key]
        # request.session.delete(session_key)
        # request.session.delete('userid')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值