4

私はdjango restフレームワークを使用してAPIを開発し、トークンベースの認証を使用しました.今、私は別のプロジェクトからそれを使用しようとしています. ユーザーIDとパスワードを使用してログインし、応答でトークンを取得し、次のすべてのURL呼び出しでヘッダーでトークンを使用する方法.

シェルから、ユーザーの1人のトークンをチェックし、ターミナルからAPIをテストしましたが、次のように機能しています。

http://127.0.0.1:8000/corporate/company/ -H 'Authorization: Token 9f4702dfddbf89e0346b2ffd10fd69173c178273'

しかし、http 呼び出しでこのトークンを使用する方法は?

インストールしたアプリに rest_framework.authtoken を含め、urls.py に次のように URL を含めました。

url(r'^api-token-auth/', 'rest_framework.authtoken.views.obtain_auth_token')

今、ログインフォームの1つを作成した別のプロジェクトからアクセスしようとしていますか? 問題は、フォームを投稿する場所と、フォームにどのフィールドを配置するかです。フォームを投稿した場合、応答でトークンが返されます。次の呼び出しでヘッダーを解析して使用するにはどうすればよいですか?

チュートリアルと API ガイドを読みましたが、何の助けにもなりません。API の準備ができており、ログインがブラウザ対応の API URL を介して機能しているときに、プロジェクトで API にアクセスする方法について。

4

1 に答える 1

3

Django rest フレームワークは、多くの認証オプションをサポートしています。必要に応じて、基本認証を使用できます。トークンを使用する場合は、ユーザーの正しいトークンで http ヘッダーを設定する必要があります。

ドキュメントから、次のように設定する必要があります(99 ...を自分のものに置き換えてください)

Authorization: Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b
于 2013-07-03T02:53:12.917 に答える