如何使用Django REST API验证android用户POST请求?

zen*_*der 4 python java authentication django android

截至目前,我有一个Django REST API,一切都是网络应用程序的hunky dory,其中我在后端实现了User Auth."login_required"条件适用于基于cookie的Web应用程序.

我现在有一个需要访问相同API的Android应用.我可以登录用户.我需要知道的是,当他们对我的观点发出GET/POST请求时,如何对每个用户进行身份验证?

我的研究显示了几个解决方案:1)Cookie支持的会话2)每个GET/POST请求发送用户名和密码(可能不安全)

有任何想法吗?

CDM*_*DMP 8

听起来你正在使用Django REST Framework,在这种情况下TokenAuthentication可能是合适的.来自文档:

此身份验证方案使用简单的基于令牌的HTTP身份验证方案.令牌认证适用于客户端 - 服务器设置,例如本机桌面和移动客户端

您不需要预先生成令牌,因为客户端可以使用obtain_auth_token您在urls.py中配置的内置视图来请求令牌.

一旦客户端获得了会话令牌,他们就可以使用Authorization:HTTP头在后续API调用中提供它.

查看文档了解更多信息:http://www.django-rest-framework.org/api-guide/authentication/#tokenauthentication