認証学習の概要についてdjango_restfulジャンゴ、

設定に関してはまず、

ジャンゴ:設定さAUTHENTICATION_BACKENDS

安らか:設定さDEFAULT_AUTHENTICATION_CLASSES

 

REST_FRAMEWORK = {
     ' DEFAULT_AUTHENTICATION_CLASSES ' :[
         ' rest_framework.authentication.BasicAuthentication ' ' rest_framework.authentication.SessionAuthentication ' ' rest_framework.authentication.TokenAuthentication ' ' rest_framework_simplejwt.authentication.JWTAuthentication ' 

    ]、
    ' DEFAULT_PAGINATION_CLASS '' rest_framework.pagination.PageNumberPagination ' ' PAGE_SIZE ':2

}

AUTHENTICATION_BACKENDS = 新しい
    ' rest_framework.authentication.TokenAuthentication ' デフォルトModelBackend 
    ' django.contrib.auth.backends.ModelBackend ' 

 

認証を呼び出すときに二人は、Djangoの?

とき1.django、ログインビュー、ユーザー認証、コールdjango.contrib.auth.authenticate。

デフlogin_custom(リクエスト):

    もし request.method == ' POST ' 

        フォームのインスタンスを作成し、要求からデータを移入: 
        フォーム= myAuthenticationForm(request.POST)
        それが有効なのかどうかのチェック:
        もしform.is_valid():

            ユーザ名 = form.cleaned_data [ ' ユーザ名' ]
            パスワード = form.cleaned_data [ ' パスワード' ]
            ユーザー =認証(要求、ユーザ名=ユーザ名、パスワード= パスワード)
             場合、ユーザはありません ありませんなし:

                ログイン(リクエスト、利用者)
                リターンリダイレクト(' ログイン:ホーム' それ以外リターンレンダリング(リクエスト、' registration_my / login_custom.html '、{ ' フォーム':フォーム})

認証パラメータ:ユーザー名+パスワードであってもよいし、それはトークンであり、 

戻り:.なしまたは設定AUTH_USER_MODEL(ないカスタムた場合、それはauth.userです)

あなたがdjango.contrib.auth.authenticateを呼び出さない場合は注意してください。だから、設定。AUTHENTICATION_BACKENDSアクセスなし、彼らは呼び出されません。

 

3.安らかな時にクラスDEFAULT_AUTHENTICATION_CLASSESの定義を呼び出すには?

 

とき2.restful、ログインビュー、ユーザー認証、コールdjango.contrib.auth.authenticate。

 

4.2一般的な設定パラメータ

DEFAULT_AUTHENTICATION_CLASSESは、AUTHENTICATION_BACKENDSは複数のクラスをカスタマイズすることができ、デフォルトのフレームがあり、あなたも自分自身をカスタマイズすることができます。
別のリターン・パラメータ、同じ呼び出しメカニズム。なし、ユーザー、トークン。

おすすめ

転載: www.cnblogs.com/lxgbky/p/12132117.html