Django项目开发中cookies和session的常用操作分析


Posted in Python onJuly 03, 2018

本文实例讲述了Django项目开发中cookies和session的常用操作。分享给大家供大家参考,具体如下:

COOKIES操作

检查cookies是否存在:

request.COOKIES.has_key('<cookie_name>')

获取cookies:

request.COOKIES.get('visits', '1')
if 'last_visit' in request.COOKIES:
 request.COOKIES['last_visit']

设置cookies:

response.set_cookie('<cookie_name>', value)

SESSION操作

获取session:

fav_color = request.session.get('fav_color', 'red')
fav_color = request.session['fav_color']

设置session:

request.session['visits'] = visits

删除session:

del request.session['fav_color']

如果给出的key 在会话中不存在,将抛出 KeyError。

判断包含session:

'fav_color' in request.session

清除session数据库

python manage.py clearsessions

附:Django基于自定义cookies 的登录,注册,退出功能示例:

#注册
def regist(req):
  if req.method == 'POST':
    uf = UserForm(req.POST)
    if uf.is_valid():
      #获得表单数据
      username = uf.cleaned_data['username']
      password = uf.cleaned_data['password']
      #添加到数据库
      User.objects.create(username= username,password=password)
      return HttpResponse('regist success!!')
  else:
    uf = UserForm()
  return render_to_response('regist.html',{'uf':uf}, context_instance=RequestContext(req))
#登陆
def login(req):
  if req.method == 'POST':
    uf = UserForm(req.POST)
    if uf.is_valid():
      #获取表单用户密码
      username = uf.cleaned_data['username']
      password = uf.cleaned_data['password']
      #获取的表单数据与数据库进行比较
      user = User.objects.filter(username__exact = username,password__exact = password)
      if user:
        #比较成功,跳转index
        response = HttpResponseRedirect('/online/index/')
        #将username写入浏览器cookie,失效时间为3600
        response.set_cookie('username',username,3600)
        return response
      else:
        #比较失败,还在login
        return HttpResponseRedirect('/online/login/')
  else:
    uf = UserForm()
  return render_to_response('login.html',{'uf':uf},context_instance=RequestContext(req))
#登陆成功
def index(req):
  username = req.COOKIES.get('username','')
  return render_to_response('index.html' ,{'username':username})
#退出
def logout(req):
  response = HttpResponse('logout !!')
  #清理cookie里保存username
  response.delete_cookie('username')
  return response

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

Python 相关文章推荐
python定时检查启动某个exe程序适合检测exe是否挂了
Jan 21 Python
python正则匹配查询港澳通行证办理进度示例分享
Dec 27 Python
python求斐波那契数列示例分享
Feb 14 Python
用python登录Dr.com思路以及代码分享
Jun 25 Python
Python中的装饰器用法详解
Jan 14 Python
Python迭代器和生成器介绍
Mar 06 Python
【Python】Python的urllib模块、urllib2模块批量进行网页下载文件
Nov 19 Python
python监控进程状态,记录重启时间及进程号的实例
Jul 15 Python
你需要学会的8个Python列表技巧
Jun 24 Python
Python3爬虫关于代理池的维护详解
Jul 30 Python
Django模型验证器介绍与源码分析
Sep 08 Python
Python 数据可视化神器Pyecharts绘制图像练习
Feb 28 Python
Python嵌套列表转一维的方法(压平嵌套列表)
Jul 03 #Python
Python使用matplotlib实现基础绘图功能示例
Jul 03 #Python
Pandas 同元素多列去重的实例
Jul 03 #Python
Python中Numpy包的安装与使用方法简明教程
Jul 03 #Python
Python单元测试简单示例
Jul 03 #Python
Python3使用pandas模块读写excel操作示例
Jul 03 #Python
Python+pandas计算数据相关系数的实例
Jul 03 #Python
You might like
php使用ob_flush不能每隔一秒输出原理分析
2015/06/02 PHP
php简单的上传类分享
2016/05/15 PHP
Yii CDBCriteria常用方法实例小结
2017/01/19 PHP
laravel接管Dingo-api和默认的错误处理方式
2019/10/25 PHP
javascript 异步页面查询实现代码(asp.net)
2010/05/26 Javascript
javascript利用控件对windows的操作实现原理与应用
2012/12/23 Javascript
JavaScript中的console.time()函数详细介绍
2014/12/29 Javascript
jquery图形密码实现方法
2015/03/11 Javascript
详解js图片轮播效果实现原理
2015/12/17 Javascript
100行代码理解和分析vue2.0响应式架构
2017/03/09 Javascript
信息滚动效果的实例讲解
2017/09/18 Javascript
JavaScript常用截取字符串的三种方式用法区别实例解析
2018/05/15 Javascript
基于Vue 2.0 监听文本框内容变化及ref的使用说明介绍
2018/08/24 Javascript
Koa代理Http请求的示例代码
2018/10/10 Javascript
CryptoJS中AES实现前后端通用加解密技术
2018/12/18 Javascript
js中事件对象和事件委托的介绍
2019/01/21 Javascript
优雅的将ElementUI表格变身成树形表格的方法步骤
2019/04/11 Javascript
python3.3教程之模拟百度登陆代码分享
2014/01/16 Python
python根据距离和时长计算配速示例
2014/02/16 Python
整理Python中的赋值运算符
2015/05/13 Python
python3结合openpyxl库实现excel操作的实例代码
2018/09/11 Python
python读取几个G的csv文件方法
2019/01/07 Python
使用python对多个txt文件中的数据进行筛选的方法
2019/07/10 Python
Python网页解析器使用实例详解
2020/05/30 Python
HTML5的结构和语义(2):结构
2008/10/17 HTML / CSS
C#的几个面试问题
2016/05/22 面试题
服务行业个人求职的自我评价
2013/12/12 职场文书
生日邀请函范文
2014/01/13 职场文书
五年级音乐教学反思
2014/02/06 职场文书
优秀党员申报材料
2014/12/18 职场文书
文案策划岗位职责
2015/02/11 职场文书
毕业生个人总结
2015/02/28 职场文书
看雷锋电影观后感
2015/06/10 职场文书
2015年庆祝国庆节66周年演讲稿
2015/07/30 职场文书
《吃水不忘挖井人》教学反思
2016/02/22 职场文书
导游词之山西关帝庙
2019/11/01 职场文书