如何使用 HTTP 連接到 QNAP QIoT Suite Lite?
本章節將介紹如何使用HTTP連線到QNAP QIoT Suite Lite
如需其他QIoT Suite Lite連接到不同開發版的部分可參考 :
https://www.qnap.com/go/how-to/tutorial/qiot-suite-lite
關於如何建立IoT Applaction及Thing部分,可參考 :
https://www.qnap.com/go/how-to/tutorial/article/how-to-show-dht11-data-on-qiot-dashboard
另外,您也可以到QNAP GitHub 參考其他程式範例 :
https://github.com/qnap-dev/qnap-qiot-sdks
開啟IoT Application取得HTTP連線設定檔
- 打開IoT應用並進入IoT 裝置頁面
- 選擇您要設定連線的IoT 裝置,點選 "連接裝置" 按鈕
- 選擇 "HTTP" 並點選 "下一頁"
- 選擇 "下載JSON檔案",下載的檔名為"resourceinfo.json"
* 更多關於resourceinfo.json資訊
下面為resourceinfo.json的範例:
{
"accesstoken":"r:e91d53d57729b9d0b59772f9f2a130dc",
"myqnapcloudHost":"Not Available",
"clientId":"rpi2_1509001699",
"host":[
"172.17.28.73"
],
"requesterid":"c08b5979-1f8f-42da-9085-d761707be65c",
"port":23000,
"resources":[
{
"description":"",
"datatype":"Float",
"resourceid":"temp",
"topic":"qiot/things/admin/rpi2/temp",
"resourcename":"temp",
"resourcetypename":"Temperature",
"unit":"°C"
}
]
}
- 參考:
- "accesstoken" : HTTP header需帶入Access-Token的值
- "myqnapcloudHost" : 顯示您是否連接上myqnapcloud DDNS服務,若連結上將會顯示hostname。(如果您有關於port轉發之設定問題,可以參考: https://qiot.qnap.com/blog/en/2017/09/21/solve-problem-using-different-port-qiot-suite-lite-v1-0-41/
- "clientId" : QIoT給予device端的ID
- "host" : Nas的IP
- "requesterid" : HTTP header需帶入Access-Token的值
- "port" : HTTP的通訊埠
- "resources" : resource資訊,包含以下:
- description : QIoT資源的說明
- datatype : QIoT資源的資料格式
- resourceid : QIoT資源的資源ID
- topic : HTTP發布及接收資料路徑
- resourcename : QIoT資源名稱
- resourcetypename : QIoT資源型態名稱
- unit : QIoT資源的單位
連線格式:
"發布":
- method: PUT
- path: /resources/<topic>
- Header:
- Access-Token : <accesstoken>
- RequesterId : <requesterid>
- Content-Type : application/json
- body:
- {"value" : <data>}
"接收":
- method: GET
- path: /resources/<topic>
- header :
- Access-Token : <accesstoken>
- RequesterId : <requesterid>
- Content-Type : application/json
使用上述範例,您可以得到以下的 "URL" 連結:
"http://172.17.28.73:23000/resources/qiot/things/admin/rpi2/temp"