具有相同后端的多个meteor应用程序

具有相同后端的多个meteor应用程序,meteor,Meteor,我是一名高中生,试图为我的学校制作一个不同用途的网络应用程序网络。我使用React on Meteor,但我不知道构建这些应用程序的最佳方法是什么。这些应用程序使用相同的用户帐户,如果已经登录到此网络中的其他应用程序,则可以自动登录。我还需要为每个小应用程序构建管理应用程序 为了做到这一点,我想我需要使用DDP来连接这些应用程序中的数据?如果是这样的话,我是否应该制作一个控制用户和数据库的后端Meteor应用程序,以及用于所有不同目的的独立前端Meteor应用程序 你会建议我如何构建这些应用程序

我是一名高中生,试图为我的学校制作一个不同用途的网络应用程序网络。我使用React on Meteor,但我不知道构建这些应用程序的最佳方法是什么。这些应用程序使用相同的用户帐户,如果已经登录到此网络中的其他应用程序,则可以自动登录。我还需要为每个小应用程序构建管理应用程序

为了做到这一点,我想我需要使用DDP来连接这些应用程序中的数据?如果是这样的话,我是否应该制作一个控制用户和数据库的后端Meteor应用程序,以及用于所有不同目的的独立前端Meteor应用程序


你会建议我如何构建这些应用程序?非常感谢你

你走的路是对的。一个Meteor应用程序将成为后端,其他Meteor应用程序将成为主应用程序的客户端。DDP是前进的道路。一旦您使用DDP将客户端连接到服务器应用程序,您的前端就如同您的两个应用程序是同一个应用程序一样。它工作得很好

这是DDP.connect(url)文档:

这是官方的消息:

共享数据 另一个重要的考虑因素是如何在不同的应用程序之间共享数据

最简单的方法是将两个应用程序指向同一个MONGO_URL,并允许两个应用程序直接从数据库读写。多亏Meteor通过数据库对反应性的支持,这项技术运行良好。当一个应用程序更改MongoDB中的某些数据时,连接到数据库的任何其他应用程序的用户都会立即看到这些更改,这要归功于Meteor的livequery

但是,在某些情况下,最好允许一个应用程序为主应用程序,并通过API控制其他应用程序对数据的访问。如果您希望在不同的时间表上部署不同的应用程序,并且需要保守数据更改的方式,那么这会有所帮助

提供服务器API的最简单方法是直接使用Meteor的内置DDP协议。这与Meteor客户端从服务器获取数据的方式相同,但您也可以使用它在不同的应用程序之间进行通信。您可以使用DDP.connect()从“客户端”服务器连接到主服务器,然后使用返回的连接对象进行方法调用和读取发布。


非常感谢你的回答!这对我帮助很大。我还有一个后续问题:如果我要在这些客户机应用程序中的一个上更改数据库,我会使用Meteor方法吗?(因为我不能直接访问数据库,只能访问DDP)是的,你必须使用方法。始终使用方法在Meteor中插入或更新数据库。