完全なeコマースプロジェクト-(11)バックグラウンド管理プロジェクト(drf)(2):django-rest-framework-simplejwtはログイン機能を実現します

jwt使用パッケージ:djangorestframework-simplejwt

インストールして使用する

pip install djangorestframework-simplejwt

構成

  • Django設定でバックエンドを構成する
REST_FRAMEWORK = {
    
    
    ...
    'DEFAULT_AUTHENTICATION_CLASSES': (
        ...
        'rest_framework_simplejwt.authentication.JWTAuthentication',
    )
    ...
}
SIMPLE_JWT = {
    
    
	# 配置jwt有效期
	'ACCESS_TOKEN_LIFETIME': timedelta(days=1),
	}

ここに画像の説明を挿入

  • 対応する構成に従って、ルートにインポートします(ルートは独自のパスに変更されます)
    ここに画像の説明を挿入

ここに画像の説明を挿入
ここに画像の説明を挿入

jwtパッケージは、ログインビジネスロジック(詳細なパッケージソースコード)を実装します

データを確認する

ctrl + bでソースコードを入力し、ログインを実現するビューを見つけます。ここにあります。フロントエンドのPOSTリクエストによって渡されたデータの処理、シリアル化、逆シリアル化に役立つシリアライザーもあります。
ここに画像の説明を挿入

  • シリアライザーに入ります:これがデータを検証する機能です
    ここに画像の説明を挿入
  • 上記の2つのデータ更新と「アクセス」を返します

カスタム返品結果

カスタムビューとシリアライザーは、上記の2つから継承されます。次に、返したいデータを追加します。

データを取得する

  • 前述のように、フロントエンドはPOSTリクエストを送信しますが、誰がPOSTリクエストを処理しますか?クラスが継承されていることに気づきました。それだけです。そのソースコードを見てください
    ここに画像の説明を挿入
    。リクエストを処理するためのメソッドがあります。彼が呼ぶシリアライザーは、上記のシリアライザーです。

内部認証は引き続き認証を使用します

ここに画像の説明を挿入
このメソッドを書き直して、検証をカスタマイズします(前述)。

おすすめ

転載: blog.csdn.net/pythonstrat/article/details/108281964