在创建订阅时,最好返回订阅ID。 例如:
curl localhost:1026/v2/subscriptions -s -S --header 'Content-Type: application/json' \
-d @- <<EOF
{
"description": "A subscription to get info about Room1",
"subject": {
"entities": [
{
"id": "Room1",
"type": "Room"
}
],
"condition": {
"attrs": [
"pressure"
]
}
},
"notification": {
"http": {
"url": "http://localhost:1028/accumulate"
},
"attrs": [
"temperature"
]
},
"expires": "2040-01-01T14:00:00.00Z",
"throttling": 5
}
EOF
不返回任何内容。在订阅的情况下,资源ID是在服务器端生成的(与实体端点有所不同,在实体端点中,ID是由客户端决定的)。因此,我认为最好在POST调用中将其返回。 有什么办法可以得到它吗?谢谢
答案 0 :(得分:1)
在对订阅创建请求的响应中的Location
标头中检索订阅ID,例如:
Location: /v2/subscriptions/5b991dfa12f473cee6651a1a
NGSIv2 API specification中的更多详细信息(请选中“创建订阅”部分)。