10 2018 档案
摘要:一、CORS设置请求头 设置请求头实现跨域: ~~~ //跨域的浏览器会让请求带Origin头,表明来自哪里的跨域请求 Origin: http://xxx.example //表明允许跨域访问 Access Control Allow Origin:上面origin的地址 //其他跨域相关的请求头
阅读全文
摘要:一、一个请求来到Django 的生命周期 FBV 不讨论 CBV: 请求被代理转发到uwsgi: 开始Django的流程: 首先经过中间件process_request (session等) 然后:url Xxx.as_view() 根据url映射到对应业务逻辑类 process_vi
阅读全文
摘要:一、配置缓存 https://www.jb51.net/article/124434.htm 二、缓存全站、页面、局部 三、自我控制的简单缓存API API 接口为:django.core.chache 存接口:cache.set(key, value, time_out
阅读全文
摘要:一、外键、OneToOne字段等on_delete为必须参数 如下ForeignKey字段源码,to、on_delete为必须参数 to:关联的表 on_delete:当该表中的某条数据删除后,关联外键的操作 related_name:反查参数,设置后可以在被关联表中通过该字段反查外键
阅读全文
摘要:一、 MVCC 原理了解 原文点击:MVCC原理浅析 读锁: 也叫共享锁、S锁,若事务T对数据对象A加上S锁,则事务T可以读A但不能修改A,其他事务只能再对A加S锁,而不能加X锁,直到T释放A上的S 锁。这保证了其他事务可以读A,但在T释放A上的S锁之前不能对A做任何修改。 写锁: 又称排他锁、X锁
阅读全文
摘要:一、并发控制 因为并发情况下有可能出现不同线程对同一资源进行变动,所以必须要对并发进行控制以保证数据的同一与安全。 可以参考CPython解释器中的GIL全局解释器锁,所以说python中没有真正的多线程,多线程任意时刻只有一个程序能申请到GIL操作CPU。
阅读全文
摘要:一、REST Frame Work REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移” REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识,客户端应用通过URL来获
阅读全文
摘要:一、分组交换网络 古老的电话通信,一根电缆,两个用户设备通信 计算机中的两个设备节点通信:分组网络 计算机网络采取分组交换技术,意思就是我有【一块数据】要发给对方,那我会把这【一块数据】分成N份【单位数据】,分别发出去,而每份【单位数据】走哪条路是不一定的,但是这些【单位数据】总要全部
阅读全文
摘要:HTTP建立连接的过程点击:HTTP三次握手、一次HTTP请求都发生了什么 一、HTTPS HTTP是超文本传输协议。HTTP协议传输的数据都是未加密的,也就是明文的,因此使用HTTP协议传输隐私信息非常不安全。为了保证这些隐私数据能加密传输,于是网景公司设计了SSL(Secure S
阅读全文
摘要:一、HTTP协议 Request HTTP报文是面向文本的,报文中的每一个字段都是一些ASCII码串,各个字段的长度是不确定的。HTTP有两类报文:请求报文和响应报文。 1.1 HTTP请求报文 一个HTTP请求报文由请求行(request line)、请求
阅读全文
摘要:一、SQL注入攻击 参考文章:原文点击 sql作为一种解释型语言,在运行时是由一个运行时组件解释语言代码并执行其中包含的指令的语言。基于这种执行方式,产生了一系列叫做代码注入(code injection)的漏洞 。它的数据其实是由程序员编写的代码和用户提交的数据共同组成的。程序员在w
阅读全文