1. ホーム
  2. python

Django Rest Frameworkを使用してログインAPIを作成するにはどうすればよいですか?

2023-09-27 14:08:09

質問

私はdjango rest frameworkを使用してログインAPIを作成したい(またはそれがすでにバンドルされている場合は既存のものを使用する)。 しかし、私は完全に途方に暮れています。 私がdjango rest framework "login"のURLにポストリクエストを送信すると、それは単にブラウズ可能なAPIテンプレートページを送り返すだけです...。

私の構成

urls.py

url(r'^api/v1/', include('rest_framework.urls', namespace='rest_framework'))

設定.py

REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.BasicAuthentication',
        'rest_framework.authentication.SessionAuthentication',
    )
}

欲しいもの

要望です。

POST /api/v1/login  username='name' pass='pass'

レスポンスです。

200 OK "{username: 'name', 'userId': '54321'}" set-cookie: sessionid="blahblah"

どのように解決するのですか?

apiビューを django-rest-framework-jwt . これはクッキーセッションではなく、認証トークンを作成するための実装ですが、あなたの実装も似たようなものになるでしょう。 参照 views.py シリアライザー.py . おそらく serializers.py をそのまま使い、正しいパラメータを返すようにビューを調整し、おそらくセッションクッキーを設定します(認証ですでに実行されているかどうかは思い出せません)。