04.django升级打怪学习记
MIME
作用:指定传输数据使用哪种形式打开
格式:大类型/小类型
image/png
image/jpg
Json:
*JsonObject
{}
key-value
*JsonArray
[]
*列表中可以是普通数据类型,也可以是JsonObject
*JsonObject和JsonArray可以嵌套
*给移动端的Json
*给Ajax(前后端/DRF)
HttpResponse:
*HttpResponseRedirect(重定向、暂时,302)
*JsonResponse(以Json格式返回数据/重写__init__,序列化Json数据,指定content_type为application/Json)
*HttpResponseBadRequest(400)
*HttpResoneFirbidden(403)
*HttpResponseServerError(500)
*Http(404)
会话技术
*出现场景
——服务器如何识别客户端
——Http在Web开发中基本都是短连接
*请求生命周期
——从Request开始
——到Response结束
*种类
——Cookie:
a.客户端会话技术(数据存储在客户端)
b.键值对存储
c.支持国企时间
d.默认Cookie会自动携带,本网站所有Cookie
e.Cookie跨域名,跨网站
f.通过HttpResponse
g.Cookie默认不支持中文
h.可以加盐(加密/获取的时候需要解密)
——Session:
a.服务端会话技术
b.数据存储在服务器中
c.默认Session存储在内存中
d.Django中默认会把Session持久化到数据库中
e.Django中Session的默认过期时间是14天
f.主键是字符串
g.数据使用了数据安全
*使用base64
*在前部添加了一个混淆串
h.Session依赖
——Token:
*服务器会话技术
*自定义的Session
*如果Web页面开发中,使用起来和Session基本一致
*如果使用在移动端或客户端开发中,通常以Json形式传输,需要移动端自己存储Token,需要获取Token关键数据的时候,主动传递Token
*Cookie和Session,Token对比
——Cookie使用更简洁,服务器压力更小,数据不是很安全
——Session服务器要维护Session,相对安全
——Token拥有Session的所有优点,自己维护麻烦,支持更多终端
CSRF:
*防跨站攻击
*防止恶意注册,确保客户端时我们自己的客户端
*使用了cookie中csrftoken进行验证,传输
*服务器发送给客户端,客户端将cookie获取起来,还要进行编码转换(数据安全)
*如何实现的
——在我们存在csrf_token标签的页面中,响应会自动设置一个cookie,csrftoken
——当我们提交的时候,会自动验证csrftoken
——验证通过,正常执行以后流程,验证不通过,直接403
目前状态:
*MTV
——基本完成
——Template不会再讲了
——View也不会再讲了
——Model(Mode关系/Model继承)
*高级
——第三方插件
——底层的部分原理:AOP面向切面编程(反扒/安全)
——文件上传
——前后端分离(RESTful)
——日志
——后台管理
*算法
——编码解码(Base64/urlencode)
——摘要算法,指纹算法,杂凑算法
——MD5/SHA/
——单向不可逆
——不过输出多长,输出都是固定长度
——只要输入有任意的变更,输出都会发生更改
——加密(对称加密/非对称加密)
——安全性最高/算法复杂,需要时间长/支付宝,微信都是RSA/
函数使用:
备注(爬虫)
*模拟人去请求数据
*提取数据
*存储数据
核心内容(数据爬取,数据提取,数据存储、提升效率,进程,线程,协程)