首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向ACP注册AE到CSE

向ACP注册AE到CSE
EN

Stack Overflow用户
提问于 2018-03-28 07:50:33
回答 1查看 270关注 0票数 1

我正在尝试实现oneM2M标准。我查看了http://www.onem2m.org/application-developer-guide/application-registration的应用程序开发人员指南。

ADN 1向MN发送注册请求,但是请求有效负载包含一个ACPI,我不明白ADN 1怎么知道ACPI?

代码语言:javascript
复制
POST /home_gateway?rcn=0 HTTP/1.1
Host: mn.provider.com:8080
X-M2M-Origin: C
Content-Type: application/vnd.onem2m-res+json; ty=2
X-M2M-RI: mncse-92345

{ "m2m:ae": {
    "rn": "light_ae1",
    "api": "A01.com.company.lightApp01",
    "rr": "true",
    "poa": ["http://192.168.0.10:9090"],
    "acpi": ["/mn-cse/acp-805496226"]
  }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-28 22:55:32

你基本上有两个选择。

首先,您可以在请求中省略acpi。在这种情况下,CSE会自动将一个(默认ACP资源)分配给新AE。然后,您将在创建请求的答案中获得该分配的acpi。

但这可能不是您想要的,因为您可能最终会得到一个分配ACP,它不会反映您实际需要的权限。

第二种方法是自己为AE创建ACP。这与创建AE资源非常相似,只是使用ACP结构。CSE负责检查是否正确地指定了所有内容,是否在允许的权限范围内。在答案中,您将获得新ACP资源的资源标识符(ri),然后在创建AE资源时将其分配给acpi属性。

使用第二种方法,首先查找ACP资源是一种很好的做法,因为它可能已经存在(如上文在应用程序运行期间所描述的那样由AE创建,或者甚至由CSE管理员预先定义),因此您可以直接检索它而不是创建它。

您应该使用结构化名称而不是ri来访问已知的资源,例如预定义的ACP。例如,您可以尝试使用结构化名称/cse-id/cse-name/myACP访问CSE上的资源,而不是使用资源标识符/cse-id/acp-12345。此方法要求您构造结构化名称,该名称稍长一些,但其优点是它反映了资源结构,使资源可以通过资源树通过路径访问,而资源标识符非常短,但不反映资源结构。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49528897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档