IOT HUB REST

A IoT Hub REST API-k programozott hozzáférést biztosítanak az eszközhöz, az üzenetkezeléshez és a feladatszolgáltatásokhoz, valamint az erőforrás-szolgáltatóhoz IoT Hub. Az üzenetkezelési szolgáltatások elérhetőek az Azure-ban futó IoT-szolgáltatásból, vagy közvetlenül az interneten bármely olyan alkalmazásból, amely képes HTTPS-kéréseket küldeni és HTTPS-válaszokat fogadni.

Szolgáltatás

  • Ezzel az API-val kezelheti IoT Hub ikereszközöket. Lekérheti és frissítheti az ikereszköz tulajdonságait, és közvetlen metódusokat hívhat meg az eszközökön.
  • Ezekkel az API-kkal kezelheti az eszközidentitásokat egy IoT Hub identitásjegyzékében.
  • Ezekkel az API-val kezelheti a feladatokat IoT Hub. Ütemezhet, lemondhat vagy lekérhet egy feladatot.

Minden tevékenységművelet megfelel a HTTP/1.1 protokoll specifikációjának, és minden művelet egy x-ms-request-id fejlécet ad vissza, amely a kéréssel kapcsolatos információk lekérésére használható. Gondoskodnia kell arról, hogy az ezekhez az erőforrásokhoz irányuló kérelmek biztonságosak legyenek. További információ: IoT Hub fejlesztői útmutató – Biztonság a biztonsági jogkivonatok létrehozásával kapcsolatos konkrét tudnivalókhoz.

Eszközüzenetek

Ezekkel az API-kkal eszközről felhőbe irányuló üzeneteket küldhet egy IoT Hubnak, és fogadhatja a felhőből az eszközre irányuló üzeneteket egy IoT Hubról. Minden tevékenységművelet megfelel a HTTP/1.1 protokoll specifikációjának. Gondoskodnia kell arról, hogy az ezekhez az erőforrásokhoz irányuló kérelmek biztonságosak legyenek. További információ: IoT Hub fejlesztői útmutató – Biztonság a biztonsági jogkivonatok létrehozásáról.

Erőforrás-szolgáltató

Ezekkel az API-kkal felügyelheti a IoT Hub-erőforrások üzembe helyezését. A kérések biztonságossá tételéről további információt az Azure REST API-referencia című témakörben talál.

Gyakori paraméterek és fejlécek

A IoT Hub kapcsolatos összes tevékenységhez az alábbi információk gyakoriak:

  • Cserélje le az {api-version} kifejezést a "2018-06-30" értékre az URI-ban.

  • Cserélje le a(z) {subscription-id} elemet az előfizetés azonosítójára az URI-ban.

  • Cserélje le a(z) {resourceGroupName} elemet az IoT Hubot tartalmazó (vagy azokat tartalmazó) erőforráscsoport-névre.

  • Cserélje le a(z) {IoTHubName} kifejezést az IoT Hub nevére.

  • Állítsa a Content-Type fejlécet application/json értékre.

  • Állítsa az Engedélyezési fejlécet a Biztonsági jogkivonatokhasználata IoT Hub biztonsági jogkivonatok használata című szakaszában megadottak szerint létrehozott SAS-jogkivonatra.

  • Az Etag fejléc az RFC7232 szerint egyetlen eszközidentitásra hatókörrel rendelkező összes kérelemben lesz visszaadva.

  • Minden PUT/PATCH művelethez a következő fejléceket kell megadni: If-Match = [*|<etag from get>]

  • A DELETE műveletek a következő fejlécet tartalmazhatják: If-Match = [*|<etag from get>]

Az ETags viselkedése alább látható:

PUT Az erőforrás nem létezik Az erőforrás létezik
If-Match = "" / hiányzik 201 Létrehozva 200 OK
If-Match = "*" 412 Az előfeltétel nem sikerült 200 OK
If-Match = "xyz" 412 Az előfeltétel nem sikerült 200 OK / 412 Előfeltétele nem sikerült
If-None-Match = "*" 201 Létrehozva 412 Az előfeltétel nem sikerült
DELETE Az erőforrás nem létezik Az erőforrás létezik
If-Match = "" / hiányzik 204 Nincs tartalom 200 OK
If-Match = "*" 204 Nincs tartalom 200 OK
If-Match = "xyz" 204 Nincs tartalom 200 OK / 412 Előfeltétele nem sikerült

Aszinkron hívások esetén:

  • A PUT a 201 Létrehozva Azure-AsyncOperation fejléccel válaszol minden aszinkron művelethez. Minden szinkron (frissítési) művelet 200 OK értéket ad vissza.

  • A DELETE a 202 Elfogadva értéket adja vissza a Hely és Retry-After fejlécekkel, valamint Azure-AsyncOperation élőfejet a létező erőforrásokhoz.

  • A hely fejléce tartalmazza a művelet eredményének URL-címét

  • Retry-After fejléc másodpercek alatt tartalmazza a megfelelő újrapróbálkozási időközt

  • Azure-AsyncOperation fejléc tartalmazza az Async művelet eredményállapotának URL-címét

  • A befejezéskor a GET to the operation result URL pontosan ugyanazt az eredményt hozza létre, mintha az eredeti művelet szinkronban fejeződött volna be