4

我正在构建一个PhoneGap (Cordova)应用程序,我希望能够与我的 Django 站点交谈。使应用程序正常工作所需的步骤是:

  1. 验证用户身份(在应用程序重新启动时保持登录状态)(例如,从 Django 获取会话 cookie 以与服务通信 - 在哪里存储?)。注意:Django 端点使用 https。
  2. 当应用程序收到推送通知时,从我的 django 站点加载一些数据。
  3. 选择数据并将响应提交回我的 django 站点(需要 csrf 令牌吗?)

我能够整理推送通知,但现在我想知道哪种解决方案最适合与 Django 的通信。据我了解,有两种可能的方法:

  1. 要么使用诸如美味派之类的东西来实现 REST 服务,要么
  2. 尝试通过 ajax 设置通信(例如 jQuery)

目前我认为简单的 ajax 可能是最好的方法,因为该应用程序相当小,并且对 REST API 没有额外的要求。

如果有人能就如何解决这个问题或分享一些经验/代码给我任何指示,那就太好了。特别是身份验证过程的步骤我不清楚。

4

1 回答 1

0

我不确定这是否仍然是一个悬而未决的问题,但它肯定是一个有趣的问题。我强烈建议使用django-tastypie,您可以从使用确实是一个很好的参考点的文档开始。

到目前为止,我的经验表明,我应该始终从让我的 api 清晰(和休息)开始,而不是选择一个更简单、更快的解决方案(例如 ajax),因为如果你的应用程序是成功的,那么像这样的框架可以帮助你扩展。

如果您选择基本的身份验证过程,则非常简单。您只需询问用户凭据,并且有许多客户端实现了客户端基本身份验证。幸运的是,tastepie 支持的远不止这些。例如,api 身份验证,您可以在此处阅读更多内容。如果您还需要什么,请告诉我。

问候,迈克尔。

于 2014-01-23T14:41:02.080 回答