我想创建一个 Web 应用程序,其中应使用 PHP 框架或 RoR 构建主应用程序。但是,只有某些部分需要实时更新(例如,协作编辑、实时提要)等。如果用户在 PHP/RoR 应用程序上进行了身份验证,是否可以将用户会话数据传递给流星应用程序?2个应用程序可以共享同一个数据库吗?关于如何实施这一点的任何见解?
问问题
286 次
1 回答
1
虽然可以按照您的要求去做,但您应该问问自己,您是否无法通过一个技术堆栈来实现您的目标。拥有像 Meteor 和 RoR / PHP 这样的多个技术堆栈意味着任何想要在您的代码库上工作的人都需要了解所有这些框架。此外,您可能能够使用 PHP 或 RoR 实现您对协作编辑和实时提要的要求。
由于您尚未发布您的要求,因此很难提出具体建议,但也许您应该列出您的要求,使用最简单的技术堆栈来实现它。
您是否知道 RoR 4 内置了对流媒体的支持:http: //tenderlovemaking.com/2012/07/30/is-it-live.html
您可能能够使用 JS 库(如 Angular 或 Ember JS)来实现您的协作需求,这些库使用 Ajax 来保持用户屏幕与其他用户正在做的事情同步。
此外,这篇关于如何实现 Trello 的博文可能会给您一些想法。他们有一个很好的协作网络界面:http: //blog.fogcreek.com/the-trello-tech-stack/
关于您的问题:
- 以两种不同技术实现的两个应用程序可以共享同一个数据库。您将需要选择一个您想要使用的两种技术堆栈都支持的数据库。之后,将两个应用程序指向同一个数据库。
- 如果您在 PHP/RoR 应用程序中对用户进行身份验证,则可以为该用户设置 cookie。假设您的 Meteor 应用程序是从同一个域提供的,那么您可以读取此 cookie,该 cookie 可能包含经过身份验证的用户会话的某种标识符。然后,您的 Meteor 应用程序可以检查数据库以查看这是否是经过身份验证的用户的有效会话。
于 2012-12-07T13:00:47.470 回答