网站跨平台,iis网站属性里,中国做爰网站,自己的淘宝网站怎么建设主要内容: 1: 装饰器函数 a: 原理: 在不改变原函数的代码和调用方式的情况下, 给函数动态的添加功能 b: 实例: 装饰器的原理:
def yue(tools):print(使用%s约一约 % tools)
def wrapper(fn):def inner(*args, **kwargs):print(先准备好钱)fn(*args, **kwargs)return inner
yue …主要内容: 1: 装饰器函数 a: 原理: 在不改变原函数的代码和调用方式的情况下, 给函数动态的添加功能 b: 实例: 装饰器的原理:
def yue(tools):print(使用%s约一约 % tools)
def wrapper(fn):def inner(*args, **kwargs):print(先准备好钱)fn(*args, **kwargs)return inner
yue wrapper(yue)
yue(momo) # 实际执行inner函数 , 给inner函数传参数, 要给inner函数设置形参, 即普遍协程万能参数的形式,装饰器函数形式 def wrapper(fn):def inner(*args, **kwargs):print(先准备好钱)ret fn(*args, **kwargs) # 如果函数有返回值用ret接, 再返回.return retreturn inner
wrapper # 相当于执行yue wrapper(yue)
def yue(tools):print(使用%s约一约 % tools)return 准备好了
print(yue(momo))2 母版继承 a : 作用: 可以减少代码量, 优化代码, 提高代码的复用性 类似于函数中的继承. (把相同的代码段提取出来, 不同的地方作为补充) b : {% extends 被继承的.html文件 %} {% block contenter %}{% endblock %} c : 实例 母版文件 !DOCTYPE html
html langen
head meta charsetUTF-8 titleDocument/title
/head
body !-- 需要母版进行替换的.html文件 -- {% block page-main %} {% endblock %}
/body
/html继承母版文件的.html !-- 继承母版文件.html --
{% extends 被继承.html文件路径 %}{% block page-main %} !-- page-main 是要被替换的块名可以更改 --内容{% endblock %}
在 views.py 中配置3 csrf: Cross-site request forgery跨网站请求伪造 详细介绍:https://www.cnblogs.com/freely/p/6928822.html a : 原理如下图 从上图可以看出, 要完成一次的csrf攻击, 受害者必须完成两个步骤: 1. 登录受信任网站a, 并在本地生成cookie. 2. 在不退出a的情况, 访问危险网站b. 注意: 并不是退出a后再登录b就没事, 应为不能保证你关闭了浏览器后, 你本地的cookie就会过期, 你上次的会话已经结束 b : crsf 防御机制 1 可以从服务端和客户端两方面着手, 防御效果从服务端着手较好, 现在一般的csrf防御也在服务端进行. 2 Django下的csrf防御机制:Django第一次响应来自某个客户端的请求时, 会在服务端随机生成一个token, 把这个token放在cookie里, 然后每次post请求都会带上这个token这样就可以避免csrf攻击. 在 templete 中, 为每个 POST form 增加一个 {% csrf_token %} tag. 如下: 1在返回的 HTTP 响应的 cookie 里django 会为你添加一个 csrftoken 字段其值为一个自动生成的 token,在检查下的network中查看. 2在所有的 POST 表单模板中加一个{% csrf_token %} 标签它的功能其实是给form增加一个隐藏的input标签如下 input typehidden namecsrfmiddlewaretoken value{{ csrf_token }}而这个csrf_token cookie.csrftoken在渲染模板时context中有 context[csrf_token] request.COOKIES[csrftoken] 3在通过表单发送POST到服务器时表单中包含了上面隐藏了crsrmiddlewaretoken这个input项服务端收到后django 会验证这个请求的 cookie 里的 csrftoken 字段的值和提交的表单里的 csrfmiddlewaretoken 字段的值是否一样。如果一样则表明这是一个合法的请求否则这个请求可能是来自于别人的 csrf 攻击返回 403 Forbidden. 4在通过 ajax 发送POST请求到服务器时要求增加一个x-csrftoken header其值为 cookie 里的 csrftoken 的值服务湍收到后django会验证这个请求的cookie里的csrftoken字段与ajax post消息头中的x-csrftoken header是否相同如果相同则表明是一个合法的请求 4 cookie(储存在用户本地终端上的数据) 定义:在 Internet 中Cookie 实际上是指小量信息是由 Web 服务器创建的将信息存储在用户计算机上的文件。一般网络用户习惯用其复数形式 Cookies指某些网站为了辨别用户身份、进行 Session 跟踪而存储在用户本地终端上的数据而这些数据通常会经过加密处理 目的: 为了让用户在访问某网站时进一步提高访问速度同时也为了进一步实现个人化网络发明了今天广泛使用的 Cookiee. 转载于:https://www.cnblogs.com/gyh412724/p/9756384.html