使用EntityID从EntityContext检索Fiware-ServicePath

时间:2015-06-19 09:54:59

标签: fiware fiware-orion

我找不到有关实体服务和服务路径的详细文档,这是我能找到的最好的this section in the Orion User Manual

我想为特定的Entity_ID检索“Fiware-ServicePath”,但NGSI10不使用queryContext提供该信息。

有没有办法检索这些信息?

此处描述了我的流程,除了使用EntityID获取ServicePath 部分外,一切正常:

  • 网关正在将数据推送到Orion,我想进行“更新或插入过程”:
    • 使用EntityID获取ServicePath
      • 如果存在:更新它
      • 如果不存在:updatecontext with ServicePath'/ NewItems'

作为一种解决方法,我会将ServicePath添加到一些元数据中......

1 个答案:

答案 0 :(得分:0)

您可以将Fiware-ServicePath: /NewItems添加到查询请求中,以检查该实体是否在该服务路径中。您还可以添加以逗号分隔的列表,例如Fiware-ServicePath: /NewItems1, /NewItems2

这种方法可行,除非实体可以在任何服务路径中(甚至不同于" / NewItems"这将用于创建未通过存在检查的实体)并且您不会#39事先知道了。

在这种情况下,暂时的解决方法就是存储与实体关联的服务路径,尽管我的推荐是使用实体属性,而不是元数据(注意在NGSI元数据中关联属性,而不是实体本身。)