ODPOCZYNEK W centrum IoTIoT Hub REST

Interfejsy API REST dla usługi IoT Hub oferują programowy dostęp do urządzenia, wiadomości i usług zadań, a także dostawcy zasobów w Centrum IoT.The REST APIs for IoT Hub offer programmatic access to the device, messaging, and job services, as well as the resource provider, in IoT Hub. Możesz uzyskać dostęp do usług obsługi wiadomości z usługi IoT działającej na platformie Azure bezpośrednio przez Internet z dowolnej aplikacji, która może wysyłać żądanie protokołu HTTPS i odbierać odpowiedź protokołu HTTPS.You can access messaging services from within an IoT service running in Azure, or directly over the Internet from any application that can send an HTTPS request and receive an HTTPS response.

UsługaService

  • Ten interfejs API służy do zarządzania bliźniamcami urządzeńusługi IoT Hub.Use this API to manage IoT Hub device twins. Można pobierać i aktualizować właściwości bliźniaczej reprezentacji urządzenia i wywoływać metody bezpośrednie na urządzeniach.You can retrieve and update device twin properties and invoke direct methods on devices.
  • Te interfejsy API służy do zarządzania tożsamościami urządzeń w rejestrze tożsamości centrum IoT Hub.Use these APIs to manage device identities in the identity registry of an IoT hub.
  • Użyj tych interfejsu API do zarządzania zadaniami w Centrum IoT.Use these API to manage Jobs in IoT Hub. Możesz zaplanować, anulować lub dostać pracę.You can schedule, cancel or get a job.

Wszystkie operacje zadań są zgodne ze specyfikacją protokołu HTTP/1.1, a każda operacja zwraca x-ms-request-id nagłówek, który może służyć do uzyskiwania informacji o żądaniu.All task operations conform to the HTTP/1.1 protocol specification and each operation returns an x-ms-request-id header that can be used to obtain information about the request. Musisz się upewnić, że żądania wysyłane do tych zasobów są bezpieczne.You must make sure that requests made to these resources are secure. Aby uzyskać więcej informacji, zobacz Przewodnik dla deweloperów usługi IoT Hub — zabezpieczenia dotyczące sposobu tworzenia tokenów zabezpieczających.For more information, see IoT Hub Developer Guide – Security for the specifics on how to create security tokens.

Wiadomości na urządzeniachDevice Messaging

Te interfejsy API z urządzenia do wysyłania komunikatów z urządzenia do chmury do centrum IoT hub i odbierania komunikatów z chmury do urządzenia z centrum IoT hub.Use these APIs from a device to send device-to-cloud messages to an IoT hub, and receive cloud-to-device messages from an IoT hub. Wszystkie operacje zadań są zgodne ze specyfikacją protokołu HTTP/1.1.All task operations conform to the HTTP/1.1 protocol specification. Musisz się upewnić, że żądania wysyłane do tych zasobów są bezpieczne.You must make sure that requests made to these resources are secure. Aby uzyskać więcej informacji, zobacz Przewodnik dla deweloperów usługi IoT Hub — zabezpieczenia, aby uzyskać szczegółowe informacje dotyczące tworzenia tokenów zabezpieczających.For more information, see IoT Hub Developer Guide - Security for specific information about how to create security tokens.

Dostawca zasobówResource Provider

Użyj tych interfejsów API do zarządzania wdrażaniem zasobów usługi IoT Hub.Use these APIs to manage the deployment of your IoT Hub resources. Aby uzyskać informacje dotyczące zabezpieczania tych żądań, zobacz Odwołanie interfejsu API rest platformy Azure.For information about how to secure these requests, see Azure REST API Reference.

Typowe parametry i nagłówkiCommon parameters and headers

Następujące informacje są wspólne dla wszystkich zadań związanych z Centrum IoT Hub:The following information is common to all tasks related to IoT Hub:

  • Zamień {api-version} na "2018-06-30" w identyfikatorze URI.Replace {api-version} with "2018-06-30" in the URI.

  • Zastąp {identyfikator subskrypcji} identyfikatorem subskrypcji w identyfikatorze URI.Replace {subscription-id} with your subscription identifier in the URI.

  • Zastąp {resourceGroupName} nazwą grupy zasobów, która zawiera (lub będzie zawierać) centrum IoT Hub.Replace {resourceGroupName} with the resource group name that contains (or will contain) your IoT hub.

  • Zastąp {IoTHubName} nazwą centrum IoT.Replace {IoTHubName} with the name of your IoT hub.

  • Ustaw nagłówek typ zawartości na application/json.Set the Content-Type header to application/json.

  • Ustaw nagłówek autoryzacji na token sygnatury dostępu Współdzielonego utworzony zgodnie z określoną w sekcji tokeny zabezpieczające przy użyciu tokenów zabezpieczających Usługi IoT Hub.Set the Authorization header to a SAS token created as specified in the security tokens section of Using IoT Hub security tokens.

  • Nagłówek Etag jest zwracany we wszystkich żądaniach o zakresie do jednej tożsamości urządzenia, zgodnie z RFC7232.The Etag header is returned in all requests scoped to a single device identity, as per RFC7232.

  • Wszystkie operacje PUT/PATCH wymagają określenia następujących nagłówków:If-Match = [*|<etag from get>]All PUT/PATCH operations require the following headers to be specified: If-Match = [*|<etag from get>]

  • Operacje DELETE mogą zawierać następujący nagłówek:If-Match = [*|<etag from get>]DELETE operations may include the following header: If-Match = [*|<etag from get>]

Zachowanie etagów można zobaczyć poniżej:The behavior for ETags can be seen below:

PUTPUT Zasób nie istniejeResource does not exist Zasób istniejeResource exists
If-Match = "" / nieobecnyIf-Match = "" / absent 201 Utworzono201 Created 200 ok.200 OK
If-Match = "*"If-Match = "*" 412 Warunek wstępny nie powiódł się412 Precondition Failed 200 ok.200 OK
If-Match = "xyz"If-Match = "xyz" 412 Warunek wstępny nie powiódł się412 Precondition Failed 200 OK / 412 Warunek wstępny nie powiódł się200 OK / 412 Precondition Failed
If-None-Match = "*"If-None-Match = "*" 201 Utworzono201 Created 412 Warunek wstępny nie powiódł się412 Precondition Failed
DELETEDELETE Zasób nie istniejeResource does not exist Zasób istniejeResource exists
If-Match = "" / nieobecnyIf-Match = "" / absent 204 Brak treści204 No Content 200 ok.200 OK
If-Match = "*"If-Match = "*" 204 Brak treści204 No Content 200 ok.200 OK
If-Match = "xyz"If-Match = "xyz" 204 Brak treści204 No Content 200 OK / 412 Warunek wstępny nie powiódł się200 OK / 412 Precondition Failed

W przypadku wywołań asynchronicznych:For asynchronous calls:

  • PUT odpowiada za pomocą 201 Utworzone za pomocą nagłówka Azure-AsyncOperation dla wszystkich operacji, które są asynchroniczne.PUT responds with 201 Created with Azure-AsyncOperation header for any operations that are asynchronous. Wszystkie operacje synchroniczne (aktualizacje) zwracają 200 OK.All synchronous (updates) operations return 200 OK.

  • DELETE zwraca 202 Zaakceptowane z lokalizacji i ponów po nagłówkach, a także nagłówek Azure-AsyncOperation dla zasobów, które istnieją.DELETE returns 202 Accepted with Location and Retry-After headers as well as Azure-AsyncOperation header for resources that exists.

  • Nagłówek lokalizacji zawiera adres URL wyniku operacjiLocation header contains URL for the operation result

  • Ponów próbę- Nagłówek zawiera odpowiedni interwał ponawiania w sekundachRetry-After header contains appropriate retry interval in seconds

  • Nagłówek Azure-AsyncOperation zawiera adres URL stanu wyniku operacji AsynchroniiAzure-AsyncOperation header contains URL for the Async operation result status

  • Po zakończeniu adres URL wyniku operacji get do operacji generuje dokładnie taki sam wynik, jak gdyby oryginalna operacja została ukończona synchronicznieOn completion, the GET to the operation result URL generates exactly the same result as if the original operation had completed synchronously