python全棧開發day71 ajax

2022-05-17 05:03:31 字數 1381 閱讀 9375

1中介軟體的用處(針對請求和響應做全域性的操作時)

可以做登入驗證

訪問限制

2. 自定義中介軟體,五個方法和三個要點

三個要點:

1.執行時間和執行順序

2.引數

3.返回值

1) process_request(self,request)

1.註冊順序,在檢視函式之前

2.引數request表示請求物件本身,和檢視函式中是同乙個物件

3.返回none就繼續往後走,返回響應物件就從本中介軟體的process_response倒序返回

2) process_response(self,request,response)

1.註冊的倒序,返回響應之後

2.request 請求物件,response:響應物件

3.必須返回響應物件

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

1.註冊的順序,檢視函式之前,urls.py之後

2.view_func:將要執行的檢視函式物件

3.返回none就繼續往後走,返回響應物件就不往後走,而是倒序遍歷process_response

4) process_template_response(self,request,response)

5) process_exception(self,request,exception)

3. csrf中介軟體原始碼分析

為什麼要把驗證csrf_token的邏輯寫在process_view()中。

如果加在process_request中,就會每個檢視函式進行驗證,哪些需要csrf驗證豁免的csrf_exampt就會不能豁免,寫在process_view()中就可以進行相應的請求豁免操作。

4. 昨日作業

同一ip一分鐘內訪問超過3次拒絕訪問

visited_record ={}

class

throttle(middlewaremixin):

defprocess_request(self,request):

ip = request.meta.get('

remote_addr')

now =time.time()

if ip not

invisited_record:

visited_record[ip] =

history =visited_record[ip]

while history and now - history[-1]>60:

history.pop()

if len(history) > 3:

return httpresponse('滾'

)

day 7 1 程序理論知識

一.程序的定義 程序 process 是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位,是作業系統 結構的基礎。在早期面向程序設計的計算機結構中,程序是程式的基本執行實體 在當代面向執行緒設計的計算機結構中,程序是執行緒的容器。程式是指令 資料及其組織形式的描述,程...

Day71 資料分析 Excel

最常用的操作 ctrl a 全選 ctrl z 撤銷 ctrl x 剪下 ctrl c 複製 ctrl v 貼上 ctrl b 加粗 ctrl s 儲存 ctrl f 查詢 ctrl h 替換 alter enter 單元格內強制換行 區域選擇 home 移到工作表中某一行的開頭 ctrl home...

Python全棧開發day9 12

一 機器數 在計算機中用二進位制表示,機器數是帶符號的,二進位制數中的最高位,0為正,1為負。二 真值 因為機器數的第一位是符號位,所以機器數的形式值數就不等於真正的數值,將帶符號位的機器數對應的真正數值稱為機器數的真值。三 原碼補碼反碼 1.原碼 原碼表示符號位加上真值的絕對值,即用第一位表示符號...