天天看點

阿裡雲物聯網平台調用雲端api常見問題彙總

1.QueryDeviceEventData

阿裡雲物聯網平台調用雲端api常見問題彙總

調用時注意ASC參數必須填寫,文檔中為非必填參數,但是不填,無法查詢出結果,另外,同其他api一樣,EndTime和StartTime為毫秒級别的時間戳

2.InvokeThingService

調用服務下發時,請先确認産品的服務定義為同步服務還是異步服務,如果是

同步服務,裝置端需要即時回饋給雲端,否則雲端日志檢查一下,會有逾時報錯,服務亦不會成功

同步傳回的topic為rrpc的響應topic

/sys/${YourProductKey}/${YourDeviceName}/rrpc/response/${messageId}

阿裡雲物聯網平台調用雲端api常見問題彙總

如果是異步服務,也需要裝置端回報才算整個服務成功,此時裝置的響應topic為

/sys/{productKey}/{deviceName}/thing/service/{tsl.service.identifier}_reply

3.其他問題

iot.prod.NotExistedProduct

産品不存在,首先檢查下輸入參數productKey是否存在,如果有,那麼看下在公共執行個體還是獨有執行個體中,如果在獨有執行個體,需要填寫IotInstanceId參數

You do not have the RAM permission

子賬号沒有權限,通路控制檢查一下子賬号的權限,賦予AliyunIOTFullAccess權限,然後調用即可

阿裡雲物聯網平台調用雲端api常見問題彙總

Access to fetch at '

https:xxxx

' has been blocked by CORS policy: Request header field x-acs-version is not allowed by Access-Control-Allow-Headers in preflight response

CORS跨域問題,不是平台側的問題

可以搜尋cors,查找對應的原因

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Access_control_CORS

4. sdk查詢時,如何設定連接配接逾時時間

sdk的request方法,提供了逾時時間的設定,已java-sdk為例,填寫request.setConnectTimeout(10000);即可設定逾時時間

阿裡雲物聯網平台調用雲端api常見問題彙總

待續