2013-07-02 160 views
4

我已经开发了一个使用django rest框架的API,并使用了基于Token的认证,现在我试图从单独的项目中使用它。我如何使用用户名和密码登录并获取响应令牌,并在所有下一个URL调用中使用头中的令牌。django rest框架认证

从壳牌我已经检查令牌用户之一,从终端测试的API,它的工作一样,

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

但如何使用此令牌在HTTP调用?

我已经安装的应用程序包括rest_framework.authtoken并列入urls.py网址为:

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

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

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

回答

3

Django rest framerwork支持许多auth选项。如果需要,您可以使用基本身份验证。 如果您想使用该令牌,则需要为用户设置带有正确标记的http标头。

从你需要将其设置为文档(更换99 ......与你)

Authorization: Token 9944b09199c62bcf9418ad846dd0e4bbdfc6ee4b 
+0

这是我已经在我的问题提及。我的问题是如何将它从完全独立的项目中插入到网址,通过网址获取数据。 – sharafjaffri

+0

成为您选择的语言,您将需要在http调用中设置标头。在python中,你可以做一些类似于 - import httplib ... httpheaders = {'Authorization':'Token 99 ... your_token'},当你调用url时,你添加头文件 - connection.request('GET','index .html',标题=标题) – silviud