IoT Hub REST
IoT Hub 위한 REST API는 IoT Hub 디바이스, 메시징 및 작업 서비스뿐만 아니라 리소스 공급자에 대한 프로그래밍 방식 액세스를 제공합니다. HTTPS 요청을 보내고 HTTPS 응답을 받을 수 있는 모든 애플리케이션에서 인터넷을 통해 직접 또는 Azure에서 실행되는 IoT 서비스 내에서 메시징 서비스에 액세스할 수 있습니다.
서비스
- 이 API를 사용하여 IoT Hub 디바이스 쌍을 관리합니다. 디바이스 쌍 속성을 검색 및 업데이트하고 디바이스에서 직접 메서드 를 호출할 수 있습니다.
- 이러한 API를 사용하여 IoT Hub의 ID 레지스트리에서 디바이스 ID를 관리합니다.
- 이러한 API를 사용하여 IoT Hub 작업을 관리합니다. 작업을 예약, 취소 또는 가져올 수 있습니다.
모든 작업 작업은 HTTP/1.1 프로토콜 사양을 준수하며 각 작업은 요청에 대한 정보를 가져오는 데 사용할 수 있는 헤더를 반환 x-ms-request-id
합니다. 이러한 리소스에 대해 생성된 요청이 안전한지 확인해야 합니다. 자세한 내용은 IoT Hub 개발자 가이드 – 보안 토큰을 만드는 방법에 대한 자세한 내용은 보안을 참조하세요.
디바이스 메시징
디바이스에서 이러한 API를 사용하여 디바이스-클라우드 메시지를 IoT Hub로 보내고 IoT Hub에서 클라우드-디바이스 메시지를 받습니다. 모든 작업은 HTTP/1.1 프로토콜 사양을 따릅니다. 이러한 리소스에 대해 생성된 요청이 안전한지 확인해야 합니다. 자세한 내용은 보안 토큰을 만드는 방법에 대한 자세한 내용은 IoT Hub 개발자 가이드 - 보안을 참조하세요.
리소스 공급자
이러한 API를 사용하여 IoT Hub 리소스의 배포를 관리합니다. 이러한 요청을 보호하는 방법에 대한 자세한 내용은 Azure REST API 참조를 참조하세요.
공통 매개 변수 및 헤더
다음 정보는 IoT Hub 관련된 모든 작업에 공통적으로 적용됩니다.
URI에서 {api-version}을 "2018-06-30"으로 바꿉니다.
URI에서 {subscription-id}를 구독 식별자로 바꿉니다.
{resourceGroupName}을 IoT Hub를 포함하거나 포함할 리소스 그룹 이름으로 바꿉니다.
{IoTHubName}을(를) IoT Hub 이름으로 바꿉니다.
콘텐츠 형식 헤더를 application/json으로 설정합니다.
권한 부여 헤더를 IoT Hub 보안 토큰 사용의 보안 토큰 섹션에 지정된 대로 만든 SAS 토큰으로 설정합니다.
Etag 헤더는 RFC7232에 따라 단일 디바이스 ID로 범위가 지정된 모든 요청에서 반환됩니다.
모든 PUT/PATCH 작업을 수행하려면 다음 헤더를 지정해야 합니다.
If-Match = [*|<etag from get>]
DELETE 작업에는 다음 헤더가 포함될 수 있습니다.
If-Match = [*|<etag from get>]
ETag의 동작은 아래에서 확인할 수 있습니다.
PUT | 리소스가 없습니다. | 리소스가 있음 |
---|---|---|
If-Match = "" / absent | 201 생성됨 | 200 정상 |
If-Match = "*" | 412 사전 조건 실패 | 200 정상 |
If-Match = "xyz" | 412 사전 조건 실패 | 200 OK/412 사전 조건 실패 |
If-None-Match = "*" | 201 생성됨 | 412 사전 조건 실패 |
DELETE | 리소스가 없습니다. | 리소스가 있음 |
---|---|---|
If-Match = "" / absent | 204 콘텐츠 없음 | 200 정상 |
If-Match = "*" | 204 콘텐츠 없음 | 200 정상 |
If-Match = "xyz" | 204 콘텐츠 없음 | 200 OK/412 사전 조건 실패 |
비동기 호출의 경우:
PUT은 비동기 작업에 대해 Azure-AsyncOperation 헤더를 사용하여 만든 201로 응답합니다. 모든 동기(업데이트) 작업은 200 확인을 반환합니다.
DELETE는 위치 및 Retry-After 헤더와 함께 허용되는 202를 반환하고 존재하는 리소스에 대한 Azure-AsyncOperation 헤더를 반환합니다.
위치 헤더에 작업 결과에 대한 URL이 포함됩니다.
Retry-After 헤더에는 적절한 재시도 간격(초)이 포함됩니다.
Azure-AsyncOperation 헤더에는 비동기 작업 결과 상태 대한 URL이 포함되어 있습니다.
완료되면 작업 결과 URL에 대한 GET은 원래 작업이 동기적으로 완료된 것과 정확히 동일한 결과를 생성합니다.