cookie与session。中间键原理

时间:2019-08-18
本文章向大家介绍cookie与session。中间键原理,主要包括cookie与session。中间键原理使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
cookie的原理:
第一次:浏览器向服务端发送第一次请求,服务端接收返回一个html页面
    
第二次:接着浏览器客户端进行登录注册,将用户名密码以post形式传给服务端-请求
这时服务端与数据库进行连接,数据库进行判断---
如果是正确的,渲染一个页面并设了一个cookie,此时cookie的val值是一个随机的字符串

if true: obj=redirect('/xxx/'),obj.set_cookie()
那服务端就给返回来一个cookie值,换句话讲的就是一张小纸条(cookie-key:value)
在客户端就页面访问cookie   可以看到的是一个键值对

第三次请求:客户端就带着一个cookie请求到服务端(进行其他的响应)也就是说那这个小纸条进行验证,如果没有小纸条,或者就是这个cookie过期了,以login为例,请重新进行登录,重新设定一下cookie。
在服务端登记的 (session内容),可以拿到客户端的隐私信息,也就是name值----

cookie 的value值:  value的隐私信息 【‘name' :'xxx','age':18】
cookie的val值 作为session的key值
- 设置session
        login:
            ### 向客户端回写一个cookie值
            '''
                1. 向客户端回写一个 {sessionid : 'lr3gmj3vpt0ytf7locqnb21p0cg63iek'}
                2. 将客户的隐私信息保存在了服务端的数据库中, 也就是session保存在了数据库中
                    默认放在django_session表中
                    {"dsjnalndjskanjdksa" : {"name":'zekai', 'age':12, 'addr':'dsabdsa'}}
            '''
            #### 设置session
            request.session['name'] = username
            request.session['age'] = 13
    
            #### 获取session
            request.session.get('name')
    
        ### 默认session存在数据库中, django_session表

cookie和session的区别

1cookie 存在客户端,session存在服务端
2cookie中存储的一般是一根身份的id,session存储的都是用户隐私的信息
3描述一下cookie和session的过程

中间键

作用的存在:保卫后台的安全,提前做安全的筛查,以及数据的过滤

middleware:共七个中间键  除了内置的这些,自己也可以自定制的写一些类
本质就是 就是一些类,实现他们的方法,django中子集内置的中间键的一些类
必须实现的是这两个方法
process_request
process_response
 这两个做重点
def process_request(self,request)
    print('...')
    
def process_response(self,request,response)
    print('....')

执行流程:

一般写需求就是在process_request里面写,写业务逻辑进行需求

另外还有一个process_view,其执行流程如下

def process_view(self,request,view_func,args,kwargs)
    print('.....')
    #return HttpResponse('////')

原文地址:https://www.cnblogs.com/zhuyuanying123--/p/11372446.html