1. 程式人生 > >【Python web 開發】第七章 開發總結

【Python web 開發】第七章 開發總結

第七章開發總結:整理一下我們的知識點:

1、首先是django rest framwork 的token 登入和原理

 django rest framwork  為我們提供了三種 認證模式

重點是 TokenAuthentication 這個   可以根據api guide 上面一步步的來配置,要配置一個url ,請求生成token

但是這個有弊端,因為這裡生成的token 是儲存到資料庫中,如果是分散式系統,每次都要同步token到另外一臺伺服器上,顯然就很麻煩,第二個就是沒有過期時間限制,這個很不安全

因此我們引入了 jwt (jason  web  token)模式生成token 

2、jwt 生成token

這個是在gitbub 上面一個開源的第三方外掛,要 pip install  django rest framwork_jwt ,具體的gitbub 上面也有使用文件,一步步的來

 

 3.一個延伸

django 從請求到響應都經歷了什麼:

這裡我清楚了setting 裡面middwire 的配置有什麼意義了

setting中註冊的middleware會將使用者request的資料經過這些middlware中有process_request方法和process_response方法註冊進入。

當用戶的request進入view之前會將這些process_request通通呼叫一遍

4、有些介面請求是要登入的情況下才能請求的,比如我的訂單,那麼我們可以單獨的對每個介面進行配置

如果要token才能請求的話,這樣配置,以goods_list 介面舉例

5、自定義使用者認證函式

自定義使用者認證函式要繼承ModelBackend,並且要重寫 authenticate 方法

使用者既可以用手機號碼登入,也可以用使用者名稱登入