django笔记10 cookie整理
- 感谢武沛齐老师 Alex老师
- cookie 没有cookie所有的网站都登录不上
- 客户端浏览器上的一个文件
- {'user':'ljc'}
- {"user":'zpt'}
- request.COOKIES.get('..')
- response.set_cookie('..')
- 加密
- obj = HttpResponse('s')
- obj.set_signed_cookie('username',"kangbazi",salt="afajkfa")
- 解密
- var w = request.get_signed_cookie('username',salt="afajkfa")
- import hashlib
- m = hashlib.md5('fdaf')
- m.update('afda')
- 装饰器:
- def auth(func): #装饰器
- def inner(request,*args, **kwargs):
- v = request.COOKIES.get('username111')
- if not v:
- return redirect('/login/')
- return func(request,*args, **kwargs)
- return inner
- FBV:
- def auth(func):
- def inner(request,*args, **kwargs):
- v = request.COOKIES.get('username111')
- if not v:
- return redirect('/login/')
- return func(request,*args, **kwargs)
- return inner
- CBV:
- from django import views
- from django.utils.decorators import method_decorator
- @method_decorator(auth, name='dispatch')
- class Order(views.View):
- # @method_decorator(auth)
- # def dispatch(self, request, *args, **kwargs):
- # return super(Order,self).dispatch(request,*args, **kwargs)
- @method_decorator(auth)
- def get(self,request):
- v = request.COOKIES.get('username111')
- return render(request, 'index.html', {'current_user': v})
- def post(self,request):
- v = request.COOKIES.get('username111')
- return render(request, 'index.html', {'current_user': v})
- cookie1:
- request.COOKIES.get('username111') #获取用户端发来的cookie 获取
- response = render(request,"index.html")
- response = redirect('/index/')
- #设置cookie 关闭浏览器失效(还可以设置超时时间)
- response.set_cookie('key',"value") #关闭浏览器时 才失效 设置
- return response
- cookie2:
- request.COOKIES.get('username111') #获取用户端发来的cookie
- response = render(request,"index.html")
- response = redirect('/index/')
- #设置cookie 10秒后会过期 max_age = 截止时间失效
- response.set_cookie('key',"value",max_age = )
- import datetime
- current_time = datetime.datetime.utcnow()
- current_time = current_date + datetime.timedelta(seconds=)
- #expires 具体到哪个时间节点
- response.set_cookie('key',"value", expires = current_time)
- return response
- cookie3: #document.cookie
- request.COOKIES.get('username111') #获取用户端发来的cookie
- response = render(request,"index.html")
- response = redirect('/index/')
- #设置cookie 关闭浏览器失效(还可以设置超时时间)
- #path='/'默认的地址
- #domain=None 生效的域名
- #secure=False https传输 如果是 要设置为true
- #httponly=True 加上他好一点 在js获取cookie时 获取不到
- response.set_cookie('key',"value") #关闭浏览器时 才失效
- return response
- user_info = {
- 'dachengzi':{'pwd':''},
- 'kanbazi':{'pwd':''},
- }
- def login(request):
- if request.method =="GET":
- return render(request,'login.html')
- if request.method == "POST":
- u = request.POST.get('username')
- p = request.POST.get('pwd')
- dic = user_info.get(u)
- if not dic:
- return render(request, 'login.html')
- if dic['pwd'] == p:
- res = redirect('/index/')
- res.set_cookie('username111',u)
- return res
- else:
- return render(request, 'login.html')
- def index(request):
- #获取当前已经登录的用户名
- v = request.COOKIES.get('username111')
- if not v:
- return redirect('/login')
- return render(request,'index.html',{'current_user':v})
- 缓存
- 中间件
- 信号
- CSRF
- Admin
- ModelForm
django笔记10 cookie整理的更多相关文章
- Django笔记-常见错误整理
1.csrf错误 解决方法:在settings.py里注释掉相关内容即可 MIDDLEWARE_CLASSES = ( 'django.contrib.sessions.middleware.Sess ...
- Django框架 之 Cookie、Session整理补充
Django框架 之 Cookie.Session整理补充 浏览目录 Django实现的Cookie Django实现的Session 一.Django实现的Cookie 1.获取Cookie 1 2 ...
- Django学习笔记之Cookie、Session和自定义分页
cookie Cookie的由来 大家都知道HTTP协议是无状态的. 无状态的意思是每次请求都是独立的,它的执行情况和结果与前面的请求和之后的请求都无直接关系,它不会受前面的请求响应情况直接影响,也不 ...
- SQL反模式学习笔记10 取整错误
目标:使用小数取代整数 反模式:使用Float类型 根据IEEE754标识,float类型使用二进制格式编码实数数据. 缺点:(1)舍入的必要性: 并不是所有的十进制中描述的信息都能使用二进制存储,处 ...
- django中操作cookie与session
cookie 什么是Cookie Cookie具体指的是一段小信息,它是服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务器提取有用信息. Cookie的 ...
- django(五):cookie和session
一.Cookie 1.cookie机制 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确 ...
- Python学习---django下的cookie操作 180201
什么是Cookies 什么是Cookies cookies设置的原因: 1. http请求的无记忆性: 2.加快访问速度 3. 减少服务器压力 cookies特点: cookies保存在客户端浏览器 ...
- 【转】Django中的cookie与session
转自:https://www.cnblogs.com/chenchao1990/p/5283725.html cookie与session的实现原理 HTTP被设计为”无状态”,每次请求都处于相同的空 ...
- 【python】-- Django 分页 、cookie、Session、CSRF
Django 分页 .cookie.Session.CSRF 一.分页 分页功能在每个网站都是必要的,下面主要介绍两种分页方式: 1.Django内置分页 from django.shortcuts ...
随机推荐
- Microsoft Updateclient更新
大家好, 微软Microsoft Update产品组官方博客于昨天宣布了有关最新的Windows Updateclient更新的消息.依据这则博客.微软从当日開始逐渐向全部Windows 7, ...
- Java 实现适配器(Adapter)模式
平时我们会常常碰到这种情况,有了两个现成的类,它们之间没有什么联系.可是我们如今既想用当中一个类的方法.同一时候也想用另外一个类的方法.有一个解决方法是.改动它们各自的接口.可是这是我们最不愿意看到的 ...
- linux 命令 xxd
xxd,能够查看linux下文件的二进制表示.man一下xxd.能够得到下面信息 NAME xxd - make a hexdump or do the reverse. SYNOPSI ...
- RedHat6.5 安装OpenStack all in one-RDO方式
OpenStack是一个开源的云平台.由各个组件协同工作,安装非常复杂. RedHat有个关于Openstack的项目RDO,能够简化安装过程,可是假设真按RDO所说的三步去安装,发现安装过程中还是有 ...
- 计算机网络 4.网络层与IP协议
网络中的每一台主机和路由器都有一个网络层部分.而路由器中也没有网络层以上的层次.网络层是协议栈中最复杂的层次. 转发forwarding:当一个分组到达某路由器的输入链路时.该路由器将分组移动到适当的 ...
- [jzoj 5177] [NOIP2017提高组模拟6.28] TRAVEL 解题报告 (二分)
题目链接: https://jzoj.net/senior/#main/show/5177 题目: 题解: 首先选出的泡泡怪一定是连续的一段 L,R 然后 L 一定属于虫洞左边界中的某一个 R 也同样 ...
- 配置 centos apache 的日志文件为每天保存,在home分区
/usr/local/apache/bin/rotatelogs 这个执行程序会根据安装方式不同的位置也不同,yum安装的话,路径为:/usr/sbin/rotatelogs 改为: ErrorLog ...
- Matlab--从入门到精通(chapter2 matlab 基础知识)
Chapter2 Matlab 基础知识 1.基本数学运算符号 注:矩阵的右除是一般意义的除法,但是左除具有对称意义,即A./B=B.\A 2. 命令行中的常用标点 3.常见的操作命令 4.输出数据显 ...
- nginx 子进程 woker process 启动失败的问题
问题: 重启nginx服务,worker process 子进程启动失败,启动的都是master进程: 负载急速升高(平常都是4-5),占用CPU资源多的前十进程都是nginx : nginx 错误日 ...
- LA3231 Fair Share 二分_网络流
Code: #include<cstdio> #include<vector> #include<queue> #include<cstring> #i ...