OneM2M,IOTKETI Mobius RETRIEVE组成员ContentInstances

问题描述 投票:1回答:1

在我的示例架构中;我有一个IN-Mobius和一个ADN-AE-百里香(nCube百里香)。

首先;我创建了一个称为“ ae_test_02”的AE,我可以通过邮递员获取此资源。

ae_test_02

此步骤之后;我运行ADN-AE-Thyme,thyme.js,它创建了一个名为“ thyme_01”的容器,我也可以通过邮递员获取此资源。

thyme_01

也是在这一步中,thyme.js将containerInstances添加到“ thyme_01”容器中。然后,我可以通过邮递员获得带有“ / la”参数的最新容器实例

la

至此,问题已经开始。我创建了一个小组资源,但是在创建我尝试过的几种解决方案时,总是失败。我尝试使用“ mid”属性;

{ "m2m:grp": {
    "rn": "grp_test_100520_08",
    "mt": 3,
    "mid": ["3-20200505012920476/la", 
            "Mobius/3-20200505012920476/la",
            "Mobius/thyme_01/la",
            "Mobius/ae_test_02/3-20200505012920476/la",
            "Mobius/ae_test_02/thyme_01/la",
            "ae_test_02/thyme_01/la",
            "ae_test_02/3-20200505012920476/la"],
    "mnm": 10
}

group create

问题是,我一一尝试了这些中间路径,但从未成功。当我尝试通过邮递员获取最新的containerInstances时,我使用此URL,结果为“资源不存在(get_target_url)”

group retrive

IN-Mobius中的容器和contentInstances,我向IN-Mobius请求。通过使用这些信息,我应该如何实现组“ mid”属性;通过组资源获取containerInstances吗?


第一次编辑。

嗨,安德里亚斯。

对于第一个问题,我可以正确获得资源。在这一点上,我的目标是容器中的GET containerInstance,它是该容器中的成员(中间)。

第二;现在我知道,资源中没有现有资源,好吧。如您所言,我想将请求传递给资源的所有成员(容器)。为此,我将使用https://localhost:7579/Mobius/grp_test_100520_08/fopt,但会出现错误“ ERR_INVALID_ARG_TYPE”。我知道,至少有一个中间结构是正确的,但是哪个结构是正确的?

对于较小的问题,我已经知道可以在mid属性中多次调用,因为我不知道哪个是正确的地址分配方案?

此外,在创建资源时,资源应位于ae资源(/ Mobius / ae_test_02 / grp_name)或Mobius(/ Mobius / grp_name)中

资源可以直接位于IN-Mobius中,还是应该位于MN-Rosemary中? fanOutPoint是否仅由外部资源(如MN或什至IN)使用,而fopt使用吗?

iot onem2m mobius
1个回答
0
投票

我认为您的示例有两个问题。

第一个问题是对的请求。您需要区分对资源本身的请求和对成员的请求。

资源本身没有子资源。这就是为什么您收到一条错误消息的原因。如果要将请求传递给资源的所有成员,则需要将虚拟子资源定位为。在您的情况下,请求应以URI https://localhost:7579/Mobius/grp_text_100520/fopt为目标。由于您已经拥有资源作为成员,因此您无需在请求中添加 /la部分。但是,我建议仅将资源添加到组中,并使用目标URI https://localhost:7579/Mobius/grp_text_100520/fopt/la检索最新的每个容器。

第二个(较小的问题是,从我的示例代码中可以得出的结论是,您向该组多次添加了相同的资源,但是只使用了不同的寻址方案。请注意,创建或更新mid属性时,CSE必须删除重复的资源。

问题更新后编辑

尚不清楚您的资源树是什么样。因此,也许您应该仅从一个资源引用开始,然后从那里继续。 mid属性中的有效ID是结构化的(基本上是rn属性的路径)或非结构化的ID(即ri)。 CSE应该过滤不正确的ID,因此您应该在CREATE请求的结果正文中获得正确的ID集。]

btw,“百里香”从哪里来?这仅在不构成ID的标签中。

关于资源:通常,所有请求都将以

资源为目标,但是对虚拟资源的请求将转发给al的成员群组。如果mid中引用的资源可访问,则将转发请求并收集结果,该结果将成为原始请求的结果主体的一部分。

您还需要注意并注意资源类型:仅向组成员发送有效请求。

© www.soinside.com 2019 - 2024. All rights reserved.