2020-01-06

{% load staticfiles %}
{% static 静态资源 %}

Ajax - Asynchronous JavaScript and XML

YAML
JSON - JavaScript Object Notation

{
"from": "Jack",
"to": "Tom",
"content": "Hello, world!"
}



Jack
Tom
Hello, world!

CSRF ---> 跨站请求伪造 ---> {% csrf_token %}
Cross Site Request Forge

HTTP协议是无连接无状态协议 ---> 两次请求之间不会保存用户的任何数据
再次请求服务器的时候 服务器无法得知请求是来自哪个用户的请求

一般情况下服务器应用都需要记住用户来为用户提供更好的服务

用户跟踪 ---> 如果希望服务器记住用户可以使用以下三种辅助方式:

  1. URL重写 http://www.baidu.com/?uid=xxxxxx
  2. 隐藏域(隐式表单域)---> 埋点


  3. 浏览器本地存储
    ~ cookie - 浏览器中的一个临时文件可以保存键值对
    cookie中的数据在发起HTTP请求时会自动加载请求头中
    ~ window.localStorage / window.sessionStorage

cookie和session的关系
request.session ---> 服务器内存中的一个对象,可以保存用户数据
cookie ---> 用户浏览器临时文件 ---> cookie中保存了session的ID

BASE64编码 ---> 用64个文字符号表示任意二进制数据
原理:将原来的三字节每6个比特一组变成四个字节
用A-Z、a-z、0-9、+和/一共64个字符来代表一个字节

Python ---> base64模块 ---> b64encode() / b64decode()
JavaScript ---> window ---> btoa() / atob()

你可能感兴趣的:(2020-01-06)