zoukankan      html  css  js  c++  java
  • cookie,session与中间键

    学习的博客地址:https://www.cnblogs.com/liwenzhou/p/8343243.html

    1.浏览器请求服务器的四种方法:url,a标签,form表单,ajax

    2.SweetAlert插件的使用:swal('title','text','type')

    3.cookie是什么?

      保留在浏览器的键值对

      浏览器访问一个网站的时候自动携带该网站的cookie

    4.cookie的作用

      保存请求的状态

    5.cookie的应用.

      登录

      保存用户的浏览习惯

      简单的投票限制

    6.Django中cookie的使用

      1.普通cookie

        1.设置cookie

          reponse_obj.set_cookie(key,value,max_age=None)

          max_age:控制cookie的过期时间,默认是关闭浏览器就失效

        2.获取cookie

          request.COOKIES  -->字典

      2.加盐的cookie

        1.设置cookie

          response_obj.set_signed_cookie(key,value,salt='',max_age=None)

        2.获取cookie

          request.get_signed_cookie(key,salt='',default='默认值')

        3.删除cookie

          request_obj.delete_cookie(key)    

    7.cookie的缺点:

      在浏览器端保存的长度4096,

      键值对保存在浏览器端,信息不安全

    8.seesion是什么?

      1.保存在服务端的键值对

    9.Django提供的装饰器工具

      from django.utils.decorators import method_deccorator

        把装饰函数的装饰器包装成可以装饰类中方法的装饰器

    10.django中ajax添加csrftoken的方式

      1.在页面上写一个{% csrftoken %},用jQuery取到其值添加到data中

      2.利用JS从cookie获取csrftoken,设置AJAX的请求头

    11.中间件

      1.作用

        全局改变Django的请求和响应

      2.Django中自定义中间件

      五个方法(执行的时间点,执行的顺序,参数,返回值)

        1.process_request(self,request)

          1.执行的时间点

            请求进来之后

          2.执行的顺序

            按照中间件的注册顺序执行

          3.参数

            当前请求对象

          4.返回值

            1.返回None继续执行后续的

            2.返回响应对象,不继续执行后续的流程,直接返回响应

        2.process_response(self,request,responnse)

          1.执行的时间点:

            返回响应之后

          2.执行顺序

            按照中间件注册的倒叙执行

          3.参数

            1.request:当前的请求对象

            2.response:传递过来的响应对象

          4.返回值

            1.必须返回一个响应对象

        3.process_view(self,request,view_func,view_args,view_kwargs)

          1.执行的时间点

            proccess_request之后,视图函数之前执行

          2.执行顺序

            按照中间件的注册顺序执行

          3.参数

            1.request:请求对象

            2.view_func:将要执行的视图函数对象

            3.view_args/view_kwargs:将要执行的函数的参数

          4.返回值

            1.None:继续往后执行

            2.响应对象:直接返回了,不会执行后续的视图函数

        4.process_template_response(self,request,response)

          1.执行的时间点:

            当视图函数中返回带render方法的响应对象,这个方法才会执行  

          2.执行的顺序

            中间键注册的倒序

          3.参数

            1.request:请求的对象

            2.response:响应对象

          4.返回值

            1.必须返回响应对象

        5.process_exception(self.request,exception)

          1.执行的时间点

            当视图函数中抛出异常的时候才会执行这个方法

          2.执行的顺序

            中间件的注册的倒序

          3.参数

            1.request:请求对象

            2.exception:视图函数抛出的异常

          4.返回值

            1.None:继续执行后续

            2.响应对象:直接返回

          

            

  • 相关阅读:
    Pytest单元测试框架实战之Pytest用例运行规则
    Pytest单元测试框架实战之-Pytest环境安装
    Monkey稳定性测试实战之ADB命令(二)
    Jenkins配置报告与邮件插件
    如何对用户体验进行测试?
    Jmeter性能测试实战之java.net.BindException: Address already in use报错解决方案
    测试过程杂记(三)Linux执行yum命令报错
    Jenkins持续集成实战之解决windows搭建jenkins执行selenium无法启动浏览器
    测试框架中工具类的实现
    《Python自动化测试修炼宝典》线上课程已经成功入驻网易云课堂......
  • 原文地址:https://www.cnblogs.com/lijinming110/p/9958977.html
Copyright © 2011-2022 走看看