2017-04-04 70 views
1

某些Watson IoT示例在設備有效負載{"d":{"temp":20}}中使用d。由於這裏embedded c要不要d,有什麼意義?

"{\"d\" : {\"temp\" : 34 }}" 

其他不使用此d,他們只是發送格式{"temp":20}。像這樣java sample:

//Generate a JSON object of the event to be published 
        JsonObject event = new JsonObject(); 
        event.addProperty("name", "foo"); 
        event.addProperty("cpu", 90); 
        event.addProperty("mem", 70); 

兩個工作,但我已經在這裏我不得不把在d作爲下游的應用程序失敗的情況 - 他們說,這是API規範的一部分。我無法找到它實際上是任何規格的一部分。對於d還是不d,這是個問題?

回答

2

所有數據都在頂級「d」元素下攜帶,並且存在可選的「ts」元素,其中包含消息的時間戳。如果不存在ts元素,則時間戳將默認爲收到消息的時間。

根據布萊恩從物聯網團隊here

物聯網基金沒有明確要求的JSON有效載荷的「d」頂級性能,但是它不鼓勵這種形式,讓物聯網基金會對有效載荷中數據的組織方式做一些假設。如果IoT Foundation的有效載荷格式未被遵循,我們將其稱爲我們文檔中的「自定義載荷」。物聯網基金會將允許您發佈自定義有效載荷...

+0

謝謝,所以實際上有一個原因!可能編寫這些沒有d樣本的人也沒有意識到這一點。 – amadain

相關問題