阿里雲物聯網平台HTTP連線通訊

2021-10-25 04:44:08 字數 3009 閱讀 1253

編輯 我的收藏

本頁目錄

物聯網平台支援使用http接入,目前僅支援https協議。下面介紹使用http連線通訊的接入流程。

接入流程主要包含進行裝置認證以獲取裝置token和採用獲取的token進行持續地資料上報。

認證裝置請求:

body:表 1. 引數說明

引數說明method

請求方法,只支援post方法。

urlhost

endpoint位址。

content-type

body

裝置認證資訊。json資料格式。具體資訊,請參見下表表 2。

表 2. body引數

欄位名稱

是否必需

說明productkey

是裝置所屬產品的productkey。可從物聯網平台控制台對應例項下的裝置詳情頁獲取。

devicename

是裝置名稱。可從物聯網平台控制台對應例項下的裝置詳情頁獲取。

clientid

是客戶端id。長度為64字元內,建議以mac位址或sn碼作為clientid。

timestamp

否時間戳。校驗時間戳15分鐘內的請求有效。時間戳格式為數值,值為自gmt 2023年1月1日0時0分到當前時間點所經過的毫秒數。

sign

是簽名。 簽名計算格式為hmacmd5(devicesecret,content)

其中,content為將所有提交給伺服器的引數(除version、sign和signmethod外),按照英文本母公升序,依次拼接排序(無拼接符號)的結果。

簽名示例:

假設clientid = 127.0.0.1,devicename = http_test,productkey = a1fhtwxq****,timestamp = 1567003778853,signmethod = hmacmd5,devicesecret = 89vtjylymrfuy2t3sywqgbm5hmk1****,簽名計算為:

其中,tohexstring()是將計算結果二進位制資料的每個byte按4 bit轉化為十六進製制字串,大小寫不敏感。例如,計算結果byte陣列是:[60 68 -67 -7 -17 99 30 69 117 -54 -58 -58 103 -23 113 71],轉換後得到的字串為:3c44bdf9ef631e4575cac6c667e97147。

signmethod

否演算法型別,支援hmacmd5和hmacsha1。 若不傳入此引數,則預設為hmacmd5。

version

否版本號。若不傳入此引數,則預設default。

裝置認證返回結果示例:

body:

}

說明表 3. 錯誤碼說明

code

message

備註10000

common error

未知錯誤。

10001

param error

請求的引數異常。

20000

auth check error

裝置鑑權失敗。

20004

update session error

更新失敗。

40000

request too many

請求次數過多,流控限制。

上報資料。 裝置傳送資料到某個topic,只支援發布許可權的topic,支援自定義topic。

例如:topic為/$/$/pub,假設當前裝置名稱為device123,產品的productkey為a1gfjlp****,那麼您可以呼叫位址來上報資料。

上報資料請求:

body: $表 4. 上報資料引數說明

引數說明method

請求方法,只支援post方法。

url/topic/$。其中,變數$需替換為資料發往的目標topic。只支援https。

host

endpoint位址。

password

放在header中的引數,取值為呼叫裝置認證介面auth返回的token值。

content-type

body

發往$的資料內容。

返回結果示例:

body:

}

表 5. 錯誤碼說明

code

message

備註10000

common error

未知錯誤。

10001

param error

請求的引數異常。

20001

token is expired

token失效。需重新呼叫auth進行鑑權,獲取token。

20002

token is null

請求header中無token資訊。

20003

check token error

根據token獲取identify資訊失敗。需重新呼叫auth進行鑑權,獲取token。

30001

publish message error

資料上行失敗。

40000

request too many

請求次數過多,流控限制。

GPRS連線阿里雲物聯網平台五

記錄裝置接入阿里雲的過程 五,一型一密 前幾篇文章寫的都是一機一密,但是實際專案中裝置往往很多,不可能一一修改 燒錄,所以阿里雲提供了一型一密的解決方案 一型一密安全認證方式,即為同一產品下所有裝置燒錄相同韌體 韌體中寫入產品證書,即productkey和productsecret 裝置傳送啟用請求...

阿里雲物聯網平台總結

基於物模型開發裝置步驟 獲取裝置的身份認證資訊。當裝置已經獲取到ip位址之後,呼叫sdk提供的api將裝置連線到物聯網平台並進行認證。當裝置連線到阿里雲物聯網平台並通過認證後,呼叫sdk提供的api將裝置屬性的最新資料上報雲端。當裝置的屬性發生變化時,呼叫sdk提供的api將裝置屬性的最新數值上報雲...

雲物聯網edge 如何選擇雲物聯網平台

雲物聯網edge 物聯網中,物聯網 是目前在計算世界上最炒作概念之一。雲物聯網平台甚至可能在炒作規模上超過物聯網。但是,兩者都有實際的應用程式,可能對您的業務很重要。在本文中,我們將在沒有太多技術細節的情況下定義iot和雲iot平台,然後討論您從雲iot平台需要什麼以及如何選擇。物聯網的簡單解釋是它...