python框架-django-cookie和session
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python框架-django-cookie和session,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1972字,纯文字阅读大概需要3分钟。
内容图文
一:cookie
cookie是一段存在本地浏览器上的文本信息,不适合存储敏感的密码等信息,不安全。
cookie的特点:
1. 键值对的形式
2.Cookie基于域名安全,不同域名的Cookie是不能互相访问的,如访问www.taobao.com时向浏览器中写了Cookie信息,使用同一浏览器访问baidu.com时,无法访问到itcast.cn写的Cookie信息。
3.当浏览器请求某网站时,会将浏览器存储的跟网站相关的所有Cookie信息提交给网站服务器。
二:设置cookie
def get_json_data(request): response = HttpResponse("ok")
#name是cookie的键,value的值是name的值,max_age=300是cookie的有效期,单位为秒。 response.set_cookie("name",value="zhangsanfeng",max_age=300) # 设置cookie通过HttpResponse的实例对象进行设置 json_str = request.body json_str = json_str.decode("utf-8") data = json.loads(json_str) d = data["test"] print(d) return response
三:获取cookie
def get_json_data(request): json_str = request.body json_str = json_str.decode("utf-8") data = json.loads(json_str) d = data["test"] print(d) cookie = request.COOKIES.get("name") # 获取cookie的方式 return HttpResponse("cookie:{}".format(cookie))
postman
四:删除cookie
def get_json_data(request): response = HttpResponse("删除cookie") response.delete_cookie("name") return response postman
结果:严格意义上不是完全删除cookie,只是删除了cookie中name的值。
五:cookie的原理
因为Http的请求时无状态的,无法判断每次是谁请求的,因此需要一个东西用来判断是谁请求了我,那么这个东西就是cookie,浏览器每次请求会带上cookie,服务器通过cookie,就知道是张三请求了我,还是李四请求了我。
cookie的大小上限为4kb,一个服务器最多在客户端上保存20个cookie,一个浏览器最多保存300个cookie。
但是有一个问题,上面我们给服务器postman中设置了cookie,为什么cookie是明文显示,安全性太差。怎么保证我们传输的是加密的。
def get_json_data(request): response = HttpResponse("cookie加密") response.set_signed_cookie("name","zhangsanfeng",salt="key",max_age=3600) return response postman
结果:value的值被签名了,只是被加了签名的cookie,并不是被加密后的值,能看出来zhangsanfenxxxxx 后面跟了一串,应该是签名的东西。
重要:expires是cookie在浏览器中的存活时间。
内容总结
以上是互联网集市为您收集整理的python框架-django-cookie和session全部内容,希望文章能够帮你解决python框架-django-cookie和session所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。