我正在运行一个Orion上下文代理实例,还有一些其他服务通过" ONCHANGE"来接收来自它的通知。订阅。
我还有一个简单的脚本,通过GET /v2/subscriptions
检查现有订阅,然后根据需要更新它们。但是,此终点不会返回为每个订阅者发送数据的格式(XML / JSON)。
问题是不同的服务需要不同的格式,并且不知道初始Accept
标头无法正确更新订阅,因为在调用任何更新方法时也会更新格式( POST /v1/updateContextSubscription
或PUT /v1/contextSubscriptions/{subscriptionID}
),默认为XML
有没有办法可以在不直接访问Mongo数据库的情况下知道订阅的格式?或任何不改变最初设置的消息格式的更新方法?
答案 0 :(得分:0)
自Orion 0.23.0(更多信息here)以来,不推荐使用XML。因此,我建议您调整所有通知接收器以仅使用JSON处理JSON并更新订阅。
否则,您的更新订阅程序需要跟踪每个接收者使用的格式(在URL->格式表中),以便在每种情况下选择正确的格式。