【问题标题】:Get application managed object with Cumulocity Microservice JavaSDK使用 Cumulocity 微服务 JavaSDK 获取应用程序托管对象
【发布时间】:2020-12-18 21:46:42
【问题描述】:

有没有一种简单的方法可以使用 Java SDK 获取微服务应用程序的托管对象? 或者如何使用 JavaSDK 获取应用程序 ID?

用例: 我的微服务对操作做出反应。作为操作 deviceId id,我使用微服务应用程序的托管对象(每个微服务都有一个)。为了读出所有挂起的操作,我需要知道这个托管对象的 id。 使用 REST API 可以获取微服务的应用程序 ID,然后使用它来查询托管对象表示,如下所示: {{url}}/inventory/managedObjects?type=c8y_Application_33175

【问题讨论】:

    标签: java cumulocity


    【解决方案1】:

    识别 managedObject 的理想方法是通过 externalId(如果您还没有 ID)。

    ExternalIds 保证在租户中是唯一的,因此您不会遇到在查询时收到多个结果的风险。

    请注意,通常不建议为您的自定义解决方案“使用”内部生成的结构。特别是如果它们没有记录在案。你不知道这些结构将来会发生什么(它们可能会被删除,具有不同的值……)。

    所以最好创建一个自己的 managedObject 来表示您的微服务并为其分配一个 externalId。 例如:

    {
       "type": "c8y_Application",
       "externalId": "my-application-name"
    }
    

    (类型后面没有定义的含义,所以你也可以放你想要的。类型和 externalId 的元组在租户中需要是唯一的)

    本质上,这与设备用于识别平台中的 managedObjects 的机制相同。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-10-16
      • 1970-01-01
      • 2021-04-10
      • 2011-10-05
      • 2011-03-28
      • 2020-10-31
      • 1970-01-01
      相关资源
      最近更新 更多