我对如何做到这一点有一个模糊的想法。
我的应用程序正在使用一个用 Django 编写的 API,但我的客户要求我只使用 Twitter 进行身份验证。问题是,在我通过 Twitter 将它们登录到 iPhone 应用程序后,我将如何使用 Django 的用户模型?
顺便说一句,我在 Django 中使用 django-tastypie,在 iOS 中使用 ASIHTTPRequest。
谢谢!
我对如何做到这一点有一个模糊的想法。
我的应用程序正在使用一个用 Django 编写的 API,但我的客户要求我只使用 Twitter 进行身份验证。问题是,在我通过 Twitter 将它们登录到 iPhone 应用程序后,我将如何使用 Django 的用户模型?
顺便说一句,我在 Django 中使用 django-tastypie,在 iOS 中使用 ASIHTTPRequest。
谢谢!
伊甘,
我在我的应用程序(和我们的网站)中使用 Facebook Connect/Graph,并使用 Piston 在我的 Django 网站周围包裹了一个 API。我实际上正在考虑去 TastyPie,但目前没有时间重构。
我在引入 FB 时遇到了类似的问题,所以我决定对所有 API 调用使用 API 令牌,并在成功登录时发出该令牌,无论使用何种身份验证机制(django 用户/密码、FB、Twitter 等) .)
目前用户可以使用用户名/密码或 FB 登录应用程序。登录由返回配置文件 json 的 HTTPS 上的“GET”组成(我可以先返回一个 API 令牌并让应用程序再次调用配置文件 json,但是在处理移动设备和慢速网络时,您希望减少网络调用)。
令牌存储在本地,并且将一直有效,直到服务器决定撤销它(过期,由用户在网站上手动等)
因此,现在我的“GET /profile”仅支持基于身份验证机制的不同 url 参数,例如 Django 的用户名/密码、Facebook 的 fbtoken、twtoken 等,在服务器端,我使用 Django 使用 3rd 方 api 验证外部令牌。这也用于获取 FB 配置文件数据,如电子邮件地址并将其存储在 Django 模型中。
我没有看过 iOS5 中的 Twitter 集成,但只要你能得到一个授权令牌,你就可以做类似的事情。