我们目前正在设计移动应用,客户已要求我们能够脱机工作并再次在线时同步数据。我正在考虑使用领域,因为它似乎使离线状态变得非常简单,但是我对任何服务器端逻辑的存在感到有些困惑。我是否正确,那个领域并没有真正设计为拥有服务器端逻辑?您只是在云可用时将数据保存到云中,但您实际上并不负责构建API及其背后的逻辑?
编辑。
进一步阅读Azure离线数据同步是一个更好的选择,因为您可以编写服务器端代码?我在这个决定中是否正确,如果我想要服务器端代码,我不能使用领域?
Thansk Michael
答案 0 :(得分:0)
Realm Mobile Platform专为离线数据访问而设计,因为它使用Realm Mobile Database的全部功能作为客户端数据存储。但是,这并不意味着您仅限于客户端交互。我们在专业版和企业版中提供Node.js SDK,您可以在Linux环境中使用移动客户端的相同Realm数据副本。
Node.js SDK提供了打开任何领域的能力,query or perform write transactions on the server将数据推送到客户端。此外,它还有event-handling capabilities,您可以在其中注册回调以执行逻辑,以响应在客户端设备上执行的数据更改。
为了更容易开始使用事件处理功能,我们启动了Realm Functions,它允许您通过Realm Object Server仪表板创建Javascript函数,然后该仪表板将响应数据更改而运行。在引擎盖下,它使用Node.js SDK为其供电。
所有这些的总和是您应该能够构建所需的任何服务器端业务逻辑。通过使用Realm的同步作为传输层,您的移动开发可以专注于应用程序逻辑与网络和数据转换。同样,您的服务器也具有数据的精确副本以执行逻辑。双方独立运作,因此离线更改将始终同步备份!