gpt4 book ai didi

android - 向 Django 后端验证 Android 或 iPhone 应用程序

转载 作者:可可西里 更新时间:2023-11-01 04:36:06 25 4
gpt4 key购买 nike

我有一个用 Django 构建的网络应用程序。它在网络上使用效果很好,但现在我正在构建一个 Android 应用程序。我不确定如何安全地验证 Django 后端的 Android 应用程序。

此网络应用程序具有用户配置文件。用户可以使用 Web 界面注册/登录/注销。 urls.py 的相关部分如下所示:

urlpatterns += patterns('',
url(r'^accounts/login/$', 'django.contrib.auth.views.login', name='login'),
url(r'^accounts/logout/$', 'django.contrib.auth.views.logout', name="logout"),
)

我的理解是,在用户成功完成 accounts/login 后,浏览器上会存放一些 cookie,用于其余的连接。这是正确的吗?

在 Android 设备上,给定用户名和密码,向 Django 后端验证用户身份的正确或最佳方式是什么?我需要像在浏览器中那样获取 cookie 还是有更好的方法?

最佳答案

有几种方法可以进行身份​​验证,但使用现有的 Django session 支持及其使用的 cookie 可能是最好的方法。

当您使用 Session Middleware 连接到 Django 页面时启用(你需要登录)它会设置一个 session cookie(通常称为'sessionid',尽管you can customise that)。用户(未)登录状态存储在由该 session ID 链接的 session 的服务器端(除非您使用 cookie-based sessions,但这是另一篇文章的项目)。

因此,您的 Android 应用程序只需获取登录页面,取出 sessionid(和 csrftoken)cookie,然后使用用户名、密码、sessionid 和 csrftoken 发帖。

这是简单的方法。还有更复杂的选项,主要涉及制作一个自定义 View ,该 View 会返回 JSON 并通常开始为您的移动应用程序提供 API,而不是让它们假装它们是浏览器,但这在 Django 端有点复杂。

关于android - 向 Django 后端验证 Android 或 iPhone 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13150521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com