5

我在 Sencha Touch 中编写一个移动应用程序,后端是 Rails。我发现随着我对 Sencha 的深入了解,我越来越多地将两者分开:我基本上处于 Rails 仅用作我的模型存储(数据库)的地步,而 Sencha 通过 JSON 提取所需的一切 - 复制Rails 中已经存在许多逻辑。

我的问题是,在将功能委派给每个应用程序时,您有什么建议?我已经在我的 Sencha 应用程序中实现了 REST,因此它可以与用户和相关数据进行通信,并以相同的格式存储它。

这是进行用户会话管理的正确方法吗?我应该给铁轨更多的权力吗?IE:我在哪里存储会话?我可以在服务器上做吗?我应该将其作为会话存储管理吗?本地存储?我只是不知道。

我会很感激任何建议。谢谢。

4

1 回答 1

7

这不完全是对您问题的具体答案,但我想补充一点,我确实认为您在正确的路线上,可以这么说,我不会担心您已经超越了架构线。

Web 正在从一种呈现文档(服务器绝对完成所有事情而浏览器基本上是哑巴)转变为一种浏览器和服务器更加对称的对等点 - 您的挑战更多地在于保持两个成熟的 MVC 应用程序同步!

(可以说,相对于客户端应用程序的丰富性,我们可能会看到一个服务器变得相当愚蠢的世界。我想这只是几十年来一直摆动的胖客户端/瘦客户端钟摆的下一个周期; -))

但对于移动设备,这不仅仅是一些随意的计算机科学问题——移动设备可能很容易有部分或零星的网络覆盖,所以对你的应用程序设计的最终测试是确定用户是否可以在什么时候继续在应用程序上工作设备处于离线状态 - 例如,被驱动到隧道中 - 然后在网络再次可用时重新同步。一个丰富的、响应迅速的客户端确实是唯一的出路。

在这种情况下,将会话丰富地存储在浏览器中似乎是一个合理的步骤。事实上,在单个客户端和服务器之间保持会话状态同步比在某些其他类型的数据记录(可能同时由多个客户端操作)中更容易。

于 2011-01-18T04:41:05.100 回答