Django中cookie的基本使用方法示例


Posted in Python onFebruary 03, 2018

前言

基于 Internet的各种服务系统应运而生,建立商业站点或者功能比较完善的个人站点,常常需要记录访问者的一些信息;论坛作为 Internet发展的产物之一,在 Internet 中发挥着越来越重要的作用,是用户获取、交流、传递信息的主要场所之一,论坛常常也需要记录访问者的一些基本信息(如身份识别号码、密码、用户在 Web 站点购物的方式或用户访问该站点的次数)。目前公认的是,通过 Cookie 和 Session 技术来实现记录访问者的一些基本信息。

下面就来一起看看Django中cookie的基本使用,话不多说了,来一起看看详细的介绍吧。

1.简述

(1)设置Cookies

response.set_cookie("cookie_key","value")

(2)获取Cookies

value = request.COOKIES["cookie_key"]

(3)删除Cookies

response.delete_cookie("cookie_key",path="/",domain=name)

(4)检测Cookies

if "cookie_name" in request.COOKIES :

(5)response.set_cookie() 传递一些可选的参数 描述

2.示例

2.1设置Cookies

login_user = models.User.objects.get(username=username, password=password) # 这里用的mongodb进行的数据存储
# print(login_user["username"])
# 帐号和密码正确,cookie保存登录状态
# 获取相应对象
response = redirect(reverse("blog:index"))
# 设置cookie
response.set_cookie("blog_username", login_user["username"], 604800) #过期时间单位是s (这里设置为7天)
response.set_cookie("blog_password", login_user["password"], 604800)

2.2检测、获取Cookies

def index(request):
 # 检测cookies是否存在
 if "blog_username" in request.COOKIES:
  # 获取cookies
  login_username = request.COOKIES.get("blog_username")
  login_password = request.COOKIES.get("blog_password")
  # 获取登录用户信息
  login_user = models.User.objects.get(username=login_username, password=login_password)
  # 返回登录成功后页面
  return render(request, "blog/index.html", {"login_user": login_user})
 else:
  # 进入未登录状态的主页
  return render(request, "blog/index.html")

2.3删除Cookies

# 注销登录视图函数
def logout(request):
 response = redirect(reverse("blog:index"))
 response.delete_cookie("blog_username")
 response.delete_cookie("blog_password")
 return response

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
python搭建服务器实现两个Android客户端间收发消息
Apr 12 Python
python最长回文串算法
Jun 04 Python
Python使用while循环花式打印乘法表
Jan 28 Python
python scatter散点图用循环分类法加图例
Mar 19 Python
numpy数组之存取文件的实现示例
May 24 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
Jun 27 Python
浅谈python已知元素,获取元素索引(numpy,pandas)
Nov 26 Python
判断Threading.start新线程是否执行完毕的实例
May 02 Python
opencv 阈值分割的具体使用
Jul 08 Python
matplotlib基础绘图命令之bar的使用方法
Aug 13 Python
python Gabor滤波器讲解
Oct 26 Python
Python在线和离线安装第三方库的方法
Oct 31 Python
Python数据分析之双色球统计两个红和蓝球哪组合比例高的方法
Feb 03 #Python
Python数据分析之双色球统计单个红和蓝球哪个比例高的方法
Feb 03 #Python
Python数据分析之双色球中蓝红球分析统计示例
Feb 03 #Python
Python数据分析之获取双色球历史信息的方法示例
Feb 03 #Python
Python内建模块struct实例详解
Feb 02 #Python
获取python文件扩展名和文件名方法
Feb 02 #Python
Python字符串格式化%s%d%f详解
Feb 02 #Python
You might like
PHP的范围解析操作符(::)的含义分析说明
2011/07/03 PHP
php 启动时报错的简单解决方法
2014/01/27 PHP
php实现文件下载代码分享
2014/08/19 PHP
php技术实现加载字体并保存成图片
2015/07/27 PHP
php文件操作小结(删除指定文件/获取文件夹下的文件名/读取文件夹下图片名)
2016/05/09 PHP
laravel自定义分页效果
2017/07/23 PHP
JS的replace方法介绍
2012/10/20 Javascript
jquery使用jxl插件导出excel示例
2014/04/14 Javascript
Js实现自定义右键行为
2015/03/26 Javascript
JavaScript计算某一天是星期几的方法
2015/08/05 Javascript
深入php面向对象、模式与实践
2016/02/16 Javascript
不定义JQuery插件 不要说会JQuery
2016/03/07 Javascript
jQuery替换节点元素的操作方法
2018/03/18 jQuery
vue .js绑定checkbox并获取、改变选中状态的实例
2018/08/24 Javascript
对vue中v-on绑定自定事件的实例讲解
2018/09/06 Javascript
微信小程序列表中item左滑删除功能
2018/11/07 Javascript
从0到1构建vueSSR项目之node以及vue-cli3的配置
2019/03/07 Javascript
Angular脚手架开发的实现步骤
2019/04/09 Javascript
vue模式history下在iis中配置流程
2019/04/17 Javascript
webpack DllPlugin xxx is not defined解决办法
2019/12/13 Javascript
基于原生js实现判断元素是否有指定class名
2020/07/11 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
2020/07/20 Javascript
使用python实现接口的方法
2017/07/07 Python
通过python实现弹窗广告拦截过程详解
2019/07/10 Python
pygame库实现移动底座弹球小游戏
2020/04/14 Python
Pytorch使用MNIST数据集实现基础GAN和DCGAN详解
2020/01/10 Python
深入浅析Python 函数注解与匿名函数
2020/02/24 Python
Python如何对XML 解析
2020/06/28 Python
沪江旗下的海量优质课程平台:沪江网校
2017/11/07 全球购物
比较基础的php面试题及答案-编程题
2012/10/14 面试题
电子信息工程自荐信
2014/05/26 职场文书
报考公务员诚信承诺书
2014/08/29 职场文书
中学生综合素质自我评价
2015/03/06 职场文书
Golang二维切片初始化的实现
2021/04/08 Golang
基于Redis结合SpringBoot的秒杀案例详解
2021/10/05 Redis
关于Nginx中虚拟主机的一些冷门知识小结
2022/03/03 Servers