django rest Framework身份验证

时间:2013-07-02 12:17:14

标签: python django rest access-token django-rest-framework

我使用django rest框架开发了一个API,并使用了基于令牌的身份验证,现在我尝试从单独的项目中使用它。我如何使用用户ID和密码登录并获得响应中的令牌,并在所有下一个url调用中使用标头中的令牌。

从Shell我已经从终端检查了一个用户和经过测试的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')

现在我试图从另一个项目访问它,我已经在其中创建了一个登录表单?现在问题是在哪里发布表格以及表格中应该有哪些字段。如果我发布了表单,那么将返回令牌作为响应然后如何解析并在下次调用时使用标头?

我已经阅读了教程和API指南,但没有帮助。关于如何在Api准备就绪的情况下访问我的项目中的api,并且登录正在通过浏览器启用的api url。

1 个答案:

答案 0 :(得分:3)

Django rest framerwork支持许多auth选项。如果需要,您可以使用Basic Auth。 如果您想使用令牌,则需要为您的用户设置一个带有正确令牌的http标头。

从你需要设置的文档(替换99 ...与你的)

Authorization: Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b