gpt4 book ai didi

fiware - Orion 上下文代理,订阅格式 "JSON"

转载 作者:行者123 更新时间:2023-12-02 04:44:32 25 4
gpt4 key购买 nike

我正在 contextBroker 上进行简单的订阅,我正在订阅我的节点应用程序。

subscribeContext

之后它返回 200 状态 OK,并将该行插入到 mongo、orion db 中。

问题是集合 csubs 格式中的字段是“XML”,在我的节点应用程序上,当我记录 contextBroker 发送的正文时,它记录了这个 logs from node that is subscribed

空体。然后,当我将 mongo 中的格式更改为“JSON”时,一切正常。正文从 contextBroker 返回数据。

我的问题是,如何让 contextBroker 在格式字段中插入默认的“JSON”。

更新:

contextBroker 版本为 0.26.1

更新

The subscription to the context, the request + body, and the response

这里我尝试使用 attributeFormat=object 让它在格式字段中插入“JSON”,但它仍然是“XML”

最佳答案

Orion Context Broker 根据与此类通知关联的订阅上下文操作的响应 使用的编码来选择通知编码。请注意,在本例中,响应采用 XML 格式,因此您将收到 XML 格式的通知。

我猜你在响应中得到了 XML,因为在订阅上下文请求中没有使用 Accept HTTP header ,这隐含地是 Accept: */*,这意味着客户端对编码没有偏好。在这种情况下,Orion 选择了 XML(由于遗留原因,要保持与仅支持 XML 的旧 Orion 版本的向后兼容性)。

因此,对于这种情况有两种可能的解决方案:

  • (推荐)在订阅上下文请求中包含 Accept: application/json
  • 添加 ?notifyFormat=json 以“强制”以 JSON 格式发送通知(例如 POST/v1/subscribeContext?notifyFormat=json),无论使用何种编码用于响应订阅上下文操作。

旁注:ONTIMEINTERVAL 订阅(屏幕截图中显示的那个)have been deprecated .因此,我们鼓励您停止使用它们,改用 ONCHANGE。

关于fiware - Orion 上下文代理,订阅格式 "JSON",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34311175/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com