开源远程/分布式/持久JSON对象库,用于Python服务器端和Javascript客户端

Open Source remote / distributed / persistent JSON object library for Python serverside and Javascript clientside?

本文关键字:Python 用于 服务器端 Javascript 客户端 对象 分布式 持久 开源 JSON      更新时间:2023-09-26

我希望能够让Javascript代码在浏览器中操作一个持久的JSON对象,并与服务器和其他客户端实时同步。

我已经使用MVC分离。我希望能够做这样的事情:

function sendMessageToUser(username, message){
    messageID = window.model.userMessages[username].messages.length;
    window.model.userMessages[username].messages[messageID] = message;
    window.requestModelSync();
}

在本例中为window。model是一个定期或按需同步的JSON对象,在碰撞时出现错误,因此"重"客户端代码可以处理这样的事件(在示例中没有捕获,但如果另一个用户在同步发生之前同时向同一用户发送消息,则同步库可能会引发错误)。

视图代码将在模型更改时被调用,并将为用户实时重新呈现消息。


是否已经有一些简单的、开源的库做到了这一点?

假设它不是那么安全,我想添加基于cookie的用户身份验证和键/值验证到它,假设它不存在-同时仍然使用JSON,没有模式或模型需要开始黑客攻击。

我已经看过Robert Sayre的sync.js,它可能是一个关键的构建块,但我想看到一些更完整的东西,最好已经在使用了。例如:COMET、避免碰撞/分辨率策略、低带宽使用等已经实现。

如果它不存在,我很乐意与精通Python和Javascript的人一起工作。


我看过http://persistencejs.org/plugin/sync -这不是JSON,他们最终定义了自己的模型类。

我也不想使用像Apache Wave的API那样复杂的东西。原型的简单性是一个关键目标。

Firebase是解决您的问题的好选择。

没有本地的Python库,但是有一个围绕REST API的Python包装器

看:重火力点

Firebase主页