代码之家  ›  专栏  ›  技术社区  ›  dethos

Orion Broker:在不更改消息格式的情况下续订订阅

  •  2
  • dethos  · 技术社区  · 10 年前

    我有一个Orion上下文代理实例正在运行,其他几个服务通过“ONCHANGE”订阅从它接收通知。

    我还有一个简单的脚本,可以通过 GET /v2/subscriptions 然后根据需要更新它们。然而,该端点不返回为每个订户发送数据的格式(XML/JSON)。

    问题是,不同的服务需要不同的格式,而且不知道最初的格式 Accept 标头无法正确续订订阅,因为当调用任何更新方法时,格式也会更新( POST /v1/updateContextSubscription PUT /v1/contextSubscriptions/{subscriptionID} ),默认为 XML

    有没有一种方法可以在不直接访问Mongo数据库的情况下知道订阅的格式?或者任何不改变最初设置的消息格式的更新方法?

    1 回复  |  直到 10 年前
        1
  •  0
  •   fgalan    10 年前

    自Orion 0.23.0以来,XML已被弃用(更多信息 here ). 因此,我建议您调整所有通知接收器以仅处理JSON并始终使用JSON更新订阅。

    否则,您的更新订阅程序需要跟踪每个接收器使用的格式(在URL->格式表中),以便在每种情况下选择正确的格式。