現在很多介面專案在登入的時候返回乙個token,登入後的拿著這個token去訪問訪問登入之後的請求。
本篇使用djangorestframework框架寫乙個登陸的介面,登入成功後返回token。
django rest framework許可權和認證有四種方式:
本篇講tokenauthentication這種認證方式,先安裝對應的模組
pip install djangorestframework在setting.py中加入配置引數
...'rest_framework',
'rest_framework.authtoken',
)新增rest_framework項,rest_framework.authentication.tokenauthentication
上面說的第三種token認證的方式。
rest_framework =同步資料庫,生成authtoken_token表
python manage.py migrate執行完成後,資料庫裡面就會多一張authtoken_token表
登入可以直接用django自帶的user表,所以不需要重新設計表了,登入的賬號就是user表的資料,先準備幾個登入的賬號,比如我的登入賬號是test,密碼是123456
views.py編輯登入的檢視函式
'''登入方法
'''def post(self, request, *args, **kwargs):
username = request.data.get('
username
')
password = request.data.get('
password
')
user = authenticate(username=username,
password=password)
ifnot
user:
return jsonresponse()
#刪除原有的token
old_token = token.objects.filter(user=user)
old_token.delete()
#建立新的token
token = token.objects.create(user=user)
return jsonresponse()
urls.py設定訪問位址
響應結果:
檢視資料庫auth_token表,存入對應·的·token值
user_id對應auth_user表中id=13的使用者
CUDA學習(四十一)
表面功能 在下面的部分中,boundarymode指定邊界模式,即處理超出範圍的表面座標的方式 它等於cudaboundarymodeclamp 在這種情況下,超出範圍的座標被鉗位到有效範圍 或cudaboundarymodezero 在這種情況下超出範圍的讀取返回零並且超出範圍的寫入被忽略 或cu...
題解四十一
請設計乙個函式,用來判斷在乙個矩陣中是否存在一條包含某字串所有字元的路徑。路徑可以從矩陣中的任意一格開始,每一步可以在矩陣中向左 右 上 下移動一格。如果一條路徑經過了矩陣的某一格,那麼該路徑不能再次進入該格仔。例如,在下面的3 4的矩陣中包含一條字串 bfce 的路徑 路徑中的字母用加粗標出 a ...
(四十一)auto命令
當我們給變數宣告時,通常採用int,或者double等整型或者浮點型別來宣告,例如int a double b 等。當我們遇見乙個常量,也可以用另外一種方法進行宣告。在c 11後方能使用。但是怎麼知道是不是c 11 那就是auto,例如 auto a 1 當使用auto的時候,編譯器會根據值自動賦予...