5

Django バックエンド、Angular フロントエンド、および Angular 用の Django REST Framework を使用して REST API を使用してアプリを構築しています。私がまだバニラのフロントエンドでバックエンドの作業を行っていたとき、提供された Django 認証を使用してユーザー認証を処理しましたが、REST ベースのアプリを作成しているので、認証へのアプローチ方法がわかりません。

すべてのユーザー データは API 経由で取得または送信されるため、API 認証で十分でしょうか? その場合、既存の Django 認証ミドルウェアを削除する必要がありますか?

現在、アプリの初期バージョンで API エンドポイントにアクセスしようとすると、通常の Django ログイン フォームのように見える画面に誘導されます。有効なユーザー名とパスワードを入力しても機能せず、再度ログインするよう求められます。基本的な Django 認証を削除すると、これを防ぐことができますか? ログインを求められるようにしたいのですが、これらのテクノロジーでそれを処理する方法がわかりません。

パッケージ django-rest-auth は便利なようで、同じグループが Angular モジュールを作成していますが、ドキュメントはインストールと提供されたエンドポイントをはるかに超えていません。最終的に、この質問の核心は、認証を Django が提供するものから django-rest-auth や DRF が推奨する他のサードパーティ パッケージの 1 つに完全に切り替えるにはどうすればよいかということだと思います。

編集: 以下にこのコメントを作成しましたが、結合された認証がどのように機能するかを理解する必要があることに気付きました。私は単一ページのアプリを構築していないので、個々の基本的なページは Django から提供されますが、各ページはさまざまな API エンドポイントにアクセスして、必要なデータを取得します。django-rest-auth のようなものですべての認証を処理する方法はありますか?

4

1 に答える 1

0

この質問に出くわした人には、ハイブリッド アプローチを機能させる方法がわかりませんでした。Django に API 呼び出しを含むページを提供させることは問題ないように見えましたが、API に対して行われたリクエストはまったく見られませんでした。他のセキュリティ上の問題が原因だと思います。可能だとは思いますが、結局はシンプルにするために、シングル ページ アプリの実装を選択することにしました。

于 2016-03-01T14:58:50.573 に答える