【问题标题】:Meteor DDP server to client specification: strange characters in the beginningMeteor DDP服务器到客户端规范:开头的奇怪字符
【发布时间】:2014-01-10 03:54:02
【问题描述】:

我现在正在发现 Meteor DDP 协议,关于它的文档并不多。

我发现 Meteor 服务器在每个消息块前面发送一个字符(不知何故像字符串一样发送,你知道为什么吗?),像这样:

c[2010,"Another connection still open"]
o
a["{\"server_id\":\"0\"}","{\"msg\":\"connected\",\"session\":\"BFWEff4389fjHFure\"}"]
a["{\"msg\":\"ready\",\"subs\":[\"fefjuihYFrvnuKOEF\"]}"]

(键已更改)

添加这个字符的目的是什么?我在哪里可以阅读更多关于它和低级 DDP 规范的信息?我是否保证(至少对于pre1 版本)所有消息都以字符串编码,并且这些字符串连接成数组,并且每个这样的数组都由一个自定义字符前置?

【问题讨论】:

    标签: meteor communication ddp


    【解决方案1】:

    我认为这些字符不是由流星添加的,而是由 sockjs 放入的,流星用于构建 DDP 的 websocket 的模块。

    • c 代表关闭(关闭框架)
    • osocket 已打开时(打开框架)
    • a接收数据时(编码JSON消息数组)/数据类型
    • h heartbeat,每分钟发送一次,以保持活力。

    DDP 不需要这些。如果您发送它们,它们将被忽略。

    您可以在像node-ddp-client 这样使用faye-websockets 的项目中查看更多没有sockjs 的低级操作,因此它更原始。数据也可以以原始字符串化 json 格式发送。

    参考:

    【讨论】:

    • 非常感谢!这回答了我所有的问题。
    猜你喜欢
    • 2017-04-06
    • 2015-07-09
    • 2015-11-19
    • 1970-01-01
    • 1970-01-01
    • 2012-08-21
    • 2014-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多