由于html cookie是存储在客户端的,且为明文,故不安全,另外一个支持html间数据传输的为session

修改blog/views.py

[[email protected] alu02]#cat blog/views.py

from django importformsfrom django.http importHttpResponsefrom django.shortcuts importrender_to_responsefrom models importUserfrom django.http.response importHttpResponseRedirectclassUserForm(forms.Form):

username=forms.CharField()

password= forms.CharField(widget =forms.PasswordInput)defregister(req):if req.method == ‘POST‘:

form=UserForm(req.POST)ifform.is_valid():

username= form.cleaned_data[‘username‘]

password= form.cleaned_data[‘password‘]

User.objects.create(username=username, password=password)return HttpResponseRedirect(‘login‘)else:

form=UserForm()return render_to_response(‘register.html‘, {‘form‘:form})deflogin(req):if req.method == ‘POST‘:

form=UserForm(req.POST)ifform.is_valid():

username= form.cleaned_data[‘username‘]

password= form.cleaned_data[‘password‘]

users= User.objects.filter(username=username, password=password)ifusers:

req.session[‘username‘] =usernamereturn HttpResponseRedirect(‘index‘)else:return HttpResponseRedirect(‘login‘)else:

form=UserForm()return render_to_response(‘login.html‘, {‘form‘:form})defindex(req):

username= req.session.get(‘username‘,‘anybody‘)return render_to_response(‘index.html‘, {‘username‘: username})deflogout(req):del req.session[‘username‘]return HttpResponse(‘you are logout‘#

测试页面

查看session id

查看数据库中的session key,可见和firefox中的session id一致

mysql> select * fromdjango_session;+----------------------------------+--------------------------------------------------------------------------------------+----------------------------+

| session_key | session_data | expire_date |

+----------------------------------+--------------------------------------------------------------------------------------+----------------------------+

| q17c9eiikrmpz2vl6im1ye6wxiawoy6k | ZjEwMDIyOWYxMWQyNDM3ODlhMmYxMTQwYjMwZDEzNmI5OWIzMjAxYTp7InVzZXJuYW1lIjoiYWx1MDIifQ== | 2016-03-22 11:51:57.352419 |

+----------------------------------+--------------------------------------------------------------------------------------+----------------------------+

1 row in set (0.00sec)

mysql>

logout会在数据库中改变session data,也就是更新为不可使用值,但是session id在firefox和数据库中均不会被删除

mysql> select * fromdjango_session;+----------------------------------+--------------------------------------------------------------+----------------------------+

| session_key | session_data | expire_date |

+----------------------------------+--------------------------------------------------------------+----------------------------+

| q17c9eiikrmpz2vl6im1ye6wxiawoy6k | ZTFhOGIxMTdjNzE2NTMzMzc2NGI2MmMxMmIzN2Y0MjI0MDE3NGY4Nzp7fQ== | 2016-03-22 11:54:34.994341 |

+----------------------------------+--------------------------------------------------------------+----------------------------+

1 row in set (0.01sec)

mysql>

原文:http://www.cnblogs.com/onmyway227/p/5253518.html

html session修改,html session相关推荐

  1. php session 修改,php session 如何修改,

    php session 如何修改如何修改PHP会话,php session的修改是会话数据的增加,其修改方式是:首先通过"session_start"保存会话数据:然后传递&quo ...

  2. 更改会话语言oracle,alter session 修改的参数值在会话中如何回退

    在session中使用alter session修改了某个参数的值,不使用alter session 能否在session中回退到原来的值? 如下:怎么将optimizer_mode 回退到原来的值A ...

  3. html session修改,session.setattribute

    关于JSP的 session.setAttribute()方法是做什么用session对象的方法setAttribute()有什么具体作用啊,请详细点,不设置行吗? session.setAttrib ...

  4. session传递参数_分布式 Session 之 Spring Session 架构与设计

    作者 | 李增光 杏仁后端工程师.「只有变秃,才能变强!」 ​前言 开始进行 Web 开发时,我们可能会遇到这样的情况,当服务器重启之后,之前的登录状态会失效需要重新登录.又或者你的应用程序部署了不止 ...

  5. Session分布式共享 = Session + Redis + Nginx

    一.Session 1.Session 介绍 我相信,搞Web开发的对Session一定再熟悉不过了,所以我就简单的介绍一下. Session:在计算机中,尤其是在网络应用中,称为"会话控制 ...

  6. php session 域,PHP session 跨子域问题总结

    今天,做项目时候遇到个问题.之前做东西的时候session一般就直接存在数据库中这样就能解决跨域 不仅仅是跨子域,但是今天遇到这个问题是,自己要在别人现有的东西上面做修改.由于仅仅是子域 当时就行肯定 ...

  7. session、flask session知识的相关收集

    1.打开两个浏览器窗口访问应用程序会使用同一个session还是不同的session session cookie是不能跨窗口使用的,当你新开了一个浏览器窗口进入相同页面时,系统会赋予你一个新的ses ...

  8. 深度实现session【包括session入库、session机制和session和cookie的使用方法,完善会话机制(在分布式机器中也能使用)】、无限分类的实现...

    1.session的注意点: @session_start();//这个配置需要注意,session开启中会有影响,所以使用错误抑制符进行限制[并且使用php.ini对session进行自动开启] s ...

  9. redis使用及Spring Session+Redis实现Session共享

    1.redis的使用 首先引入依赖 IDEA可以直接创建项目前搜redis直接导入 <dependency><groupId>org.springframework.boot& ...

  10. Session.flush和session.evict

    Session.flush和session.evict方法一起使用出现的问题 Flush:清空临时存储区Insertion,把缓存中的existsInDataBase=true,然后发出sql语句 E ...

最新文章

  1. 3.1.3 覆盖与交换
  2. 你看过Xgboost原文吗?
  3. Redis 6.0 的客户端缓存是怎么肥事?一文带你了解!
  4. Cris 的 Scala 笔记整理(八):面向对象中级-封装
  5. linux mysql更改用户权限
  6. 监控某个dll被修改_浅谈动力环境监控系统技术标准
  7. @PreDestroy 为什么不执行
  8. 百度AI之身份证识别
  9. python用于爬虫的包是_Python 爬虫之抓包的理解
  10. iOS安装包ipa文件安装及模拟app版本更新
  11. android 查看 屏幕刷新率,屏幕刷新率检查app
  12. Qt学习笔记(二十七):QLabel 的常用方法
  13. 用dRING设置特定日期提醒
  14. 更换内存条、固态硬盘、双系统配置全纪录
  15. 【Linux】解压缩文件(一)
  16. 帆软报表FineReport学习实践
  17. Mirai源码分析报告 (1)
  18. GIS开源库GEOS库学习教程(二):geos中的几何图形(Geometry)
  19. 说词——浣溪沙 苏轼
  20. 来自itouch的测试

热门文章

  1. js变量按照存储方式区分,有哪些类型,并表述其特点
  2. javascript 组成
  3. 2015-iOS面试总结(上)
  4. 在yii中加入mongodb扩展
  5. TOMCAT内存大小调整
  6. 汉字与多字节编码的转换 - 回复 不知道 的问题
  7. 3.abp框架code first方式创建表
  8. Winform中自定义xml配置文件后对节点进行读取与写入(XmlDocument)
  9. asp.NET导出Gridview到excel 带模板列显示
  10. laravel实现发送邮件(腾讯企业邮箱)